mirror of
https://github.com/Eugeny/tabby
synced 2024-12-12 06:12:44 +00:00
project rename
This commit is contained in:
parent
c61be3d52b
commit
43cd3318da
609 changed files with 510 additions and 530 deletions
18
.github/dependabot.yml
vendored
18
.github/dependabot.yml
vendored
|
@ -13,55 +13,55 @@ updates:
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-core"
|
directory: "/tabby-core"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-settings"
|
directory: "/tabby-settings"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-terminal"
|
directory: "/tabby-terminal"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-local"
|
directory: "/tabby-local"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-community-color-schemes"
|
directory: "/tabby-community-color-schemes"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-electron"
|
directory: "/tabby-electron"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-web"
|
directory: "/tabby-web"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-plugin-manager"
|
directory: "/tabby-plugin-manager"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 20
|
||||||
- package-ecosystem: npm
|
- package-ecosystem: npm
|
||||||
directory: "/terminus-ssh"
|
directory: "/tabby-ssh"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
time: "04:00"
|
time: "04:00"
|
||||||
|
|
4
.github/workflows/linux.yml
vendored
4
.github/workflows/linux.yml
vendored
|
@ -44,7 +44,7 @@ jobs:
|
||||||
# DEBUG: electron-builder,electron-builder:*
|
# DEBUG: electron-builder,electron-builder:*
|
||||||
|
|
||||||
- name: Build web resources
|
- name: Build web resources
|
||||||
run: zsh -c 'tar czf terminus-web.tar.gz (terminus-*|web)/dist'
|
run: zsh -c 'tar czf tabby-web.tar.gz (tabby-*|web)/dist'
|
||||||
|
|
||||||
- name: Upload symbols
|
- name: Upload symbols
|
||||||
run: |
|
run: |
|
||||||
|
@ -68,7 +68,7 @@ jobs:
|
||||||
mkdir artifact-tar.gz
|
mkdir artifact-tar.gz
|
||||||
mv dist/*.tar.gz artifact-tar.gz/ || true
|
mv dist/*.tar.gz artifact-tar.gz/ || true
|
||||||
mkdir artifact-web
|
mkdir artifact-web
|
||||||
mv terminus-web.tar.gz artifact-web/ || true
|
mv tabby-web.tar.gz artifact-web/ || true
|
||||||
|
|
||||||
- uses: actions/upload-artifact@master
|
- uses: actions/upload-artifact@master
|
||||||
name: Upload DEB
|
name: Upload DEB
|
||||||
|
|
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -32,5 +32,5 @@ docs/api
|
||||||
sentry.properties
|
sentry.properties
|
||||||
sentry-symbols.js
|
sentry-symbols.js
|
||||||
|
|
||||||
terminus-ssh/util/pagent.exe
|
tabby-ssh/util/pagent.exe
|
||||||
*.psd
|
*.psd
|
||||||
|
|
36
.travis.yml
36
.travis.yml
|
@ -1,36 +0,0 @@
|
||||||
language: node_js
|
|
||||||
node_js: 15
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- Build
|
|
||||||
- name: Docs
|
|
||||||
if: branch = master
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
include:
|
|
||||||
- stage: 'Docs'
|
|
||||||
os: linux
|
|
||||||
if: branch = master
|
|
||||||
script:
|
|
||||||
- '[ -z "${encrypted_4e2fb4889ef8_iv}" ] && exit 0 || true'
|
|
||||||
- set -e
|
|
||||||
- openssl aes-256-cbc -K $encrypted_4e2fb4889ef8_key -iv $encrypted_4e2fb4889ef8_iv -in .travis.ssh.key.enc -out .travis.ssh.key -d
|
|
||||||
- eval "$(ssh-agent -s)"
|
|
||||||
- chmod 600 .travis.ssh.key
|
|
||||||
- ssh-add .travis.ssh.key
|
|
||||||
- yarn
|
|
||||||
- yarn run docs
|
|
||||||
- rsync -e "ssh -o StrictHostKeyChecking=no" -arv docs/api/ root@ajenti.org:/srv/terminus-docs/
|
|
||||||
|
|
||||||
dist: xenial
|
|
||||||
sudo: false
|
|
||||||
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- rpm
|
|
||||||
- yarn
|
|
||||||
- libsecret-1-dev
|
|
||||||
sources:
|
|
||||||
- sourceline: 'deb https://dl.yarnpkg.com/debian/ stable main'
|
|
||||||
key_url: 'https://dl.yarnpkg.com/debian/pubkey.gpg'
|
|
2
.vscode/launch.json
vendored
2
.vscode/launch.json
vendored
|
@ -8,7 +8,7 @@
|
||||||
"protocol": "inspector",
|
"protocol": "inspector",
|
||||||
"runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
|
"runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
|
||||||
"env": {
|
"env": {
|
||||||
"TERMINUS_DEV": "1"
|
"TABBY_DEV": "1"
|
||||||
},
|
},
|
||||||
"runtimeArgs": [
|
"runtimeArgs": [
|
||||||
"--remote-debugging-port=9223",
|
"--remote-debugging-port=9223",
|
||||||
|
|
36
HACKING.md
36
HACKING.md
|
@ -1,6 +1,6 @@
|
||||||
# Some background
|
# Some background
|
||||||
|
|
||||||
Terminus is an Electron app, with the frontend written in Typescript with the help of Angular framework. It's built using Webpack.
|
Tabby is an Electron app, with the frontend written in Typescript with the help of Angular framework. It's built using Webpack.
|
||||||
|
|
||||||
# Getting started
|
# Getting started
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ Now, check if your build is working:
|
||||||
yarn run build
|
yarn run build
|
||||||
```
|
```
|
||||||
|
|
||||||
Start Terminus with
|
Start Tabby with
|
||||||
|
|
||||||
```
|
```
|
||||||
yarn start
|
yarn start
|
||||||
|
@ -58,26 +58,26 @@ The artifacts will be produced in the `dist` folder.
|
||||||
|
|
||||||
# Project layout
|
# Project layout
|
||||||
```
|
```
|
||||||
terminus
|
tabby
|
||||||
├─ app # Electron app, just the bare essentials
|
├─ app # Electron app, just the bare essentials
|
||||||
| ├─ src # Electron renderer code
|
| ├─ src # Electron renderer code
|
||||||
| └─ main.js # Electron main entry point
|
| └─ main.js # Electron main entry point
|
||||||
├─ build
|
├─ build
|
||||||
├─ clink # Clink distributive, for Windows
|
├─ clink # Clink distributive, for Windows
|
||||||
├─ scripts # Maintenance scripts
|
├─ scripts # Maintenance scripts
|
||||||
├─ terminus-community-color-schemes # Plugin that provides color schemes
|
├─ tabby-community-color-schemes # Plugin that provides color schemes
|
||||||
├─ terminus-core # Plugin that provides base UI and tab management
|
├─ tabby-core # Plugin that provides base UI and tab management
|
||||||
├─ terminus-electron # Plugin that provides Electron-specific functions
|
├─ tabby-electron # Plugin that provides Electron-specific functions
|
||||||
├─ terminus-local # Plugin that provides local shells and profiles
|
├─ tabby-local # Plugin that provides local shells and profiles
|
||||||
├─ terminus-plugin-manager # Plugin that installs other plugins
|
├─ tabby-plugin-manager # Plugin that installs other plugins
|
||||||
├─ terminus-settings # Plugin that provides the settings tab
|
├─ tabby-settings # Plugin that provides the settings tab
|
||||||
├─ terminus-terminal # Plugin that provides terminal tabs
|
├─ tabby-terminal # Plugin that provides terminal tabs
|
||||||
└─ terminus-web # Plugin that provides web-specific functions
|
└─ tabby-web # Plugin that provides web-specific functions
|
||||||
```
|
```
|
||||||
|
|
||||||
# Plugin layout
|
# Plugin layout
|
||||||
```
|
```
|
||||||
terminus-pluginname
|
tabby-pluginname
|
||||||
├─ src # Typescript code
|
├─ src # Typescript code
|
||||||
| ├─ components # Angular components
|
| ├─ components # Angular components
|
||||||
| | ├─ foo.component.ts # Code
|
| | ├─ foo.component.ts # Code
|
||||||
|
@ -94,11 +94,11 @@ terminus-pluginname
|
||||||
|
|
||||||
# Plugins
|
# Plugins
|
||||||
|
|
||||||
The app will load all plugins from the source checkout in the dev mode, from the user's plugins directory at all times (click `Open Plugins Directory` under `Settings` > `Plugins`) and from the directory specified by the `TERMINUS_PLUGINS` environment var.
|
The app will load all plugins from the source checkout in the dev mode, from the user's plugins directory at all times (click `Open Plugins Directory` under `Settings` > `Plugins`) and from the directory specified by the `TABBY_PLUGINS` environment var.
|
||||||
|
|
||||||
Only modules whose `package.json` file contains a `terminus-plugin` keyword will be loaded.
|
Only modules whose `package.json` file contains a `tabby-plugin` keyword will be loaded.
|
||||||
|
|
||||||
If you're currently in your plugin's directory, start Terminus as `TERMINUS_PLUGINS=$(pwd) terminus --debug`
|
If you're currently in your plugin's directory, start Tabby as `TABBY_PLUGINS=$(pwd) tabby --debug`
|
||||||
|
|
||||||
A plugin should only provide a default export, which should be a `NgModule` class (or a `NgModuleWithDependencies` where applicable). This module will be injected as a dependency to the app's root module.
|
A plugin should only provide a default export, which should be a `NgModule` class (or a `NgModuleWithDependencies` where applicable). This module will be injected as a dependency to the app's root module.
|
||||||
|
|
||||||
|
@ -118,7 +118,7 @@ Plugins provide functionality by exporting singular or multi providers:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
import { NgModule, Injectable } from '@angular/core'
|
import { NgModule, Injectable } from '@angular/core'
|
||||||
import { ToolbarButtonProvider, ToolbarButton } from 'terminus-core'
|
import { ToolbarButtonProvider, ToolbarButton } from 'tabby-core'
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class MyButtonProvider extends ToolbarButtonProvider {
|
export class MyButtonProvider extends ToolbarButtonProvider {
|
||||||
|
@ -143,6 +143,6 @@ export default class MyModule { }
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
See `terminus-core/src/api.ts`, `terminus-settings/src/api.ts`, `terminus-local/src/api.ts` and `terminus-terminal/src/api.ts` for the available extension points.
|
See `tabby-core/src/api.ts`, `tabby-settings/src/api.ts`, `tabby-local/src/api.ts` and `tabby-terminal/src/api.ts` for the available extension points.
|
||||||
|
|
||||||
Publish your plugin on NPM with a `terminus-plugin` keyword to make it appear in the Plugin Manager.
|
Publish your plugin on NPM with a `tabby-plugin` keyword to make it appear in the Plugin Manager.
|
||||||
|
|
16
README.md
16
README.md
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
**Terminus** is a highly configurable terminal emulator, SSH and serial client for Windows, macOS and Linux
|
**Tabby** (formerly **Terminus**) is a highly configurable terminal emulator, SSH and serial client for Windows, macOS and Linux
|
||||||
|
|
||||||
* Integrated SSH client and connection manager
|
* Integrated SSH client and connection manager
|
||||||
* Integrated serial terminal
|
* Integrated serial terminal
|
||||||
|
@ -29,7 +29,7 @@
|
||||||
# Contents
|
# Contents
|
||||||
|
|
||||||
- [Contents](#contents)
|
- [Contents](#contents)
|
||||||
- [What Terminus is and isn't](#what-terminus-is-and-isnt)
|
- [What Tabby is and isn't](#what-tabby-is-and-isnt)
|
||||||
- [Terminal features](#terminal-features)
|
- [Terminal features](#terminal-features)
|
||||||
- [SSH Client](#ssh-client)
|
- [SSH Client](#ssh-client)
|
||||||
- [Serial Terminal](#serial-terminal)
|
- [Serial Terminal](#serial-terminal)
|
||||||
|
@ -39,11 +39,11 @@
|
||||||
- [Contributing](#contributing)
|
- [Contributing](#contributing)
|
||||||
|
|
||||||
<a name="about"></a>
|
<a name="about"></a>
|
||||||
# What Terminus is and isn't
|
# What Tabby is and isn't
|
||||||
|
|
||||||
* **Terminus is** an alternative to Windows' standard terminal (conhost), PowerShell ISE, PuTTY or iTerm
|
* **Tabby is** an alternative to Windows' standard terminal (conhost), PowerShell ISE, PuTTY or iTerm
|
||||||
|
|
||||||
* **Terminus is not** a new shell or a MinGW or Cygwin replacement. Neither is it lightweight - if RAM usage is of importance, consider [Conemu](https://conemu.github.io) or [Alacritty](https://github.com/jwilm/alacritty)
|
* **Tabby is not** a new shell or a MinGW or Cygwin replacement. Neither is it lightweight - if RAM usage is of importance, consider [Conemu](https://conemu.github.io) or [Alacritty](https://github.com/jwilm/alacritty)
|
||||||
|
|
||||||
<a name="terminal"></a>
|
<a name="terminal"></a>
|
||||||
# Terminal features
|
# Terminal features
|
||||||
|
@ -84,12 +84,12 @@
|
||||||
<a name="portable"></a>
|
<a name="portable"></a>
|
||||||
# Portable
|
# Portable
|
||||||
|
|
||||||
Terminus will run as a portable app on Windows, if you create a `data` folder in the same location where `Terminus.exe` lives.
|
Tabby will run as a portable app on Windows, if you create a `data` folder in the same location where `Tabby.exe` lives.
|
||||||
|
|
||||||
<a name="plugins"></a>
|
<a name="plugins"></a>
|
||||||
# Plugins
|
# Plugins
|
||||||
|
|
||||||
Plugins and themes can be installed directly from the Settings view inside Terminus.
|
Plugins and themes can be installed directly from the Settings view inside Tabby.
|
||||||
|
|
||||||
* [clickable-links](https://github.com/Eugeny/terminus-clickable-links) - makes paths and URLs in the terminal clickable
|
* [clickable-links](https://github.com/Eugeny/terminus-clickable-links) - makes paths and URLs in the terminal clickable
|
||||||
* [title-control](https://github.com/kbjr/terminus-title-control) - allows modifying the title of the terminal tabs by providing a prefix, suffix, and/or strings to be removed
|
* [title-control](https://github.com/kbjr/terminus-title-control) - allows modifying the title of the terminal tabs by providing a prefix, suffix, and/or strings to be removed
|
||||||
|
@ -102,7 +102,7 @@ Plugins and themes can be installed directly from the Settings view inside Termi
|
||||||
# Themes
|
# Themes
|
||||||
|
|
||||||
* [hype](https://github.com/Eugeny/terminus-theme-hype) - a Hyper inspired theme
|
* [hype](https://github.com/Eugeny/terminus-theme-hype) - a Hyper inspired theme
|
||||||
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - the Relaxed theme for Terminus
|
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - the Relaxed theme for Tabby
|
||||||
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
|
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
|
||||||
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
|
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
|
||||||
* [altair](https://github.com/yxuko/terminus-altair)
|
* [altair](https://github.com/yxuko/terminus-altair)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
owner: eugeny
|
owner: eugeny
|
||||||
repo: terminus
|
repo: terminus
|
||||||
provider: github
|
provider: github
|
||||||
updaterCacheDirName: terminus-updater
|
updaterCacheDirName: tabby-updater
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
doctype html
|
doctype html
|
||||||
html.terminus
|
html.tabby
|
||||||
head
|
head
|
||||||
meta(charset='UTF-8')
|
meta(charset='UTF-8')
|
||||||
base(href='index.html')
|
base(href='index.html')
|
||||||
|
@ -15,8 +15,8 @@ html.terminus
|
||||||
app-root
|
app-root
|
||||||
.preload-logo
|
.preload-logo
|
||||||
div
|
div
|
||||||
.terminus-logo
|
.tabby-logo
|
||||||
h1.terminus-title Terminus
|
h1.tabby-title Tabby
|
||||||
sup α
|
sup α
|
||||||
.progress
|
.progress
|
||||||
.bar(style='width: 0%')
|
.bar(style='width: 0%')
|
||||||
|
|
|
@ -154,7 +154,7 @@ export class Application {
|
||||||
this.tray.setContextMenu(contextMenu)
|
this.tray.setContextMenu(contextMenu)
|
||||||
}
|
}
|
||||||
|
|
||||||
this.tray.setToolTip(`Terminus ${app.getVersion()}`)
|
this.tray.setToolTip(`Tabby ${app.getVersion()}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
disableTray (): void {
|
disableTray (): void {
|
||||||
|
@ -195,7 +195,7 @@ export class Application {
|
||||||
{
|
{
|
||||||
label: 'Application',
|
label: 'Application',
|
||||||
submenu: [
|
submenu: [
|
||||||
{ role: 'about', label: 'About Terminus' },
|
{ role: 'about', label: 'About Tabby' },
|
||||||
{ type: 'separator' },
|
{ type: 'separator' },
|
||||||
{
|
{
|
||||||
label: 'Preferences',
|
label: 'Preferences',
|
||||||
|
|
|
@ -6,7 +6,7 @@ export function parseArgs (argv: string[], cwd: string): any {
|
||||||
}
|
}
|
||||||
|
|
||||||
return require('yargs/yargs')(argv.slice(1))
|
return require('yargs/yargs')(argv.slice(1))
|
||||||
.usage('terminus [command] [arguments]')
|
.usage('tabby [command] [arguments]')
|
||||||
.command('open [directory]', 'open a shell in a directory', {
|
.command('open [directory]', 'open a shell in a directory', {
|
||||||
directory: { type: 'string', 'default': cwd },
|
directory: { type: 'string', 'default': cwd },
|
||||||
})
|
})
|
||||||
|
|
|
@ -3,7 +3,20 @@ import * as path from 'path'
|
||||||
import * as yaml from 'js-yaml'
|
import * as yaml from 'js-yaml'
|
||||||
import { app } from 'electron'
|
import { app } from 'electron'
|
||||||
|
|
||||||
|
export function migrateConfig (): void {
|
||||||
|
const configPath = path.join(app.getPath('userData'), 'config.yaml')
|
||||||
|
const legacyConfigPath = path.join(app.getPath('userData'), '../terminus', 'config.yaml')
|
||||||
|
if (fs.existsSync(legacyConfigPath) && (
|
||||||
|
!fs.existsSync(configPath) ||
|
||||||
|
fs.statSync(configPath).mtime < fs.statSync(legacyConfigPath).mtime
|
||||||
|
)) {
|
||||||
|
fs.writeFileSync(configPath, fs.readFileSync(legacyConfigPath))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export function loadConfig (): any {
|
export function loadConfig (): any {
|
||||||
|
migrateConfig()
|
||||||
|
|
||||||
const configPath = path.join(app.getPath('userData'), 'config.yaml')
|
const configPath = path.join(app.getPath('userData'), 'config.yaml')
|
||||||
if (fs.existsSync(configPath)) {
|
if (fs.existsSync(configPath)) {
|
||||||
return yaml.load(fs.readFileSync(configPath, 'utf8'))
|
return yaml.load(fs.readFileSync(configPath, 'utf8'))
|
||||||
|
|
|
@ -7,8 +7,8 @@ import { parseArgs } from './cli'
|
||||||
import { Application } from './app'
|
import { Application } from './app'
|
||||||
import electronDebug = require('electron-debug')
|
import electronDebug = require('electron-debug')
|
||||||
|
|
||||||
if (!process.env.TERMINUS_PLUGINS) {
|
if (!process.env.TABBY_PLUGINS) {
|
||||||
process.env.TERMINUS_PLUGINS = ''
|
process.env.TABBY_PLUGINS = ''
|
||||||
}
|
}
|
||||||
|
|
||||||
const application = new Application()
|
const application = new Application()
|
||||||
|
|
|
@ -4,9 +4,6 @@ import * as electron from 'electron'
|
||||||
|
|
||||||
const appPath = path.dirname(electron.app.getPath('exe'))
|
const appPath = path.dirname(electron.app.getPath('exe'))
|
||||||
|
|
||||||
if (fs.existsSync(path.join(appPath, 'terminus-data'))) {
|
|
||||||
fs.renameSync(path.join(appPath, 'terminus-data'), path.join(appPath, 'data'))
|
|
||||||
}
|
|
||||||
const portableData = path.join(appPath, 'data')
|
const portableData = path.join(appPath, 'data')
|
||||||
if (fs.existsSync(portableData)) {
|
if (fs.existsSync(portableData)) {
|
||||||
console.log('reset user data to ' + portableData)
|
console.log('reset user data to ' + portableData)
|
||||||
|
|
|
@ -8,7 +8,7 @@ try {
|
||||||
release = require('@electron/remote').app.getVersion()
|
release = require('@electron/remote').app.getVersion()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!process.env.TERMINUS_DEV) {
|
if (!process.env.TABBY_DEV) {
|
||||||
init({
|
init({
|
||||||
dsn: SENTRY_DSN,
|
dsn: SENTRY_DSN,
|
||||||
release,
|
release,
|
||||||
|
|
|
@ -56,7 +56,7 @@ export class Window {
|
||||||
const bwOptions: BrowserWindowConstructorOptions = {
|
const bwOptions: BrowserWindowConstructorOptions = {
|
||||||
width: 800,
|
width: 800,
|
||||||
height: 600,
|
height: 600,
|
||||||
title: 'Terminus',
|
title: 'Tabby',
|
||||||
minWidth: 400,
|
minWidth: 400,
|
||||||
minHeight: 300,
|
minHeight: 300,
|
||||||
webPreferences: {
|
webPreferences: {
|
||||||
|
@ -118,7 +118,7 @@ export class Window {
|
||||||
})
|
})
|
||||||
|
|
||||||
this.window.on('blur', () => {
|
this.window.on('blur', () => {
|
||||||
if (this.configStore.appearance.dock !== 'off' && this.configStore.appearance?.dockHideOnBlur) {
|
if (this.configStore.appearance?.dock !== 'off' && this.configStore.appearance?.dockHideOnBlur) {
|
||||||
this.hide()
|
this.hide()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"name": "terminus",
|
"name": "tabby",
|
||||||
"description": "A terminal for a modern age",
|
"description": "A terminal for a modern age",
|
||||||
"private": true,
|
"private": true,
|
||||||
"repository": "https://github.com/eugeny/terminus",
|
"repository": "https://github.com/eugeny/terminus",
|
||||||
|
@ -55,15 +55,15 @@
|
||||||
"source-map-support": "^0.5.19"
|
"source-map-support": "^0.5.19"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"terminus-community-color-schemes": "*",
|
"tabby-community-color-schemes": "*",
|
||||||
"terminus-core": "*",
|
"tabby-core": "*",
|
||||||
"terminus-electron": "*",
|
"tabby-electron": "*",
|
||||||
"terminus-local": "*",
|
"tabby-local": "*",
|
||||||
"terminus-plugin-manager": "*",
|
"tabby-plugin-manager": "*",
|
||||||
"terminus-serial": "*",
|
"tabby-serial": "*",
|
||||||
"terminus-settings": "*",
|
"tabby-settings": "*",
|
||||||
"terminus-ssh": "*",
|
"tabby-ssh": "*",
|
||||||
"terminus-terminal": "*"
|
"tabby-terminal": "*"
|
||||||
},
|
},
|
||||||
"resolutions": {
|
"resolutions": {
|
||||||
"*/node-abi": "^2.20.0"
|
"*/node-abi": "^2.20.0"
|
||||||
|
|
|
@ -12,7 +12,7 @@ import { ipcRenderer } from 'electron'
|
||||||
|
|
||||||
import { getRootModule } from './app.module'
|
import { getRootModule } from './app.module'
|
||||||
import { findPlugins, initModuleLookup, loadPlugins } from './plugins'
|
import { findPlugins, initModuleLookup, loadPlugins } from './plugins'
|
||||||
import { BootstrapData, BOOTSTRAP_DATA, PluginInfo } from '../../terminus-core/src/api/mainProcess'
|
import { BootstrapData, BOOTSTRAP_DATA, PluginInfo } from '../../tabby-core/src/api/mainProcess'
|
||||||
|
|
||||||
// Always land on the start view
|
// Always land on the start view
|
||||||
location.hash = ''
|
location.hash = ''
|
||||||
|
@ -23,7 +23,7 @@ if (process.platform === 'win32' && !('HOME' in process.env)) {
|
||||||
process.env.HOME = `${process.env.HOMEDRIVE}${process.env.HOMEPATH}`
|
process.env.HOME = `${process.env.HOMEDRIVE}${process.env.HOMEPATH}`
|
||||||
}
|
}
|
||||||
|
|
||||||
if (process.env.TERMINUS_DEV && !process.env.TERMINUS_FORCE_ANGULAR_PROD) {
|
if (process.env.TABBY_DEV && !process.env.TABBY_FORCE_ANGULAR_PROD) {
|
||||||
console.warn('Running in debug mode')
|
console.warn('Running in debug mode')
|
||||||
} else {
|
} else {
|
||||||
enableProdMode()
|
enableProdMode()
|
||||||
|
@ -42,7 +42,7 @@ async function bootstrap (bootstrapData: BootstrapData, plugins: PluginInfo[], s
|
||||||
const moduleRef = await platformBrowserDynamic([
|
const moduleRef = await platformBrowserDynamic([
|
||||||
{ provide: BOOTSTRAP_DATA, useValue: bootstrapData },
|
{ provide: BOOTSTRAP_DATA, useValue: bootstrapData },
|
||||||
]).bootstrapModule(module)
|
]).bootstrapModule(module)
|
||||||
if (process.env.TERMINUS_DEV) {
|
if (process.env.TABBY_DEV) {
|
||||||
const applicationRef = moduleRef.injector.get(ApplicationRef)
|
const applicationRef = moduleRef.injector.get(ApplicationRef)
|
||||||
const componentRef = applicationRef.components[0]
|
const componentRef = applicationRef.components[0]
|
||||||
enableDebugTools(componentRef)
|
enableDebugTools(componentRef)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import * as fs from 'mz/fs'
|
import * as fs from 'mz/fs'
|
||||||
import * as path from 'path'
|
import * as path from 'path'
|
||||||
import * as remote from '@electron/remote'
|
import * as remote from '@electron/remote'
|
||||||
import { PluginInfo } from '../../terminus-core/src/api/mainProcess'
|
import { PluginInfo } from '../../tabby-core/src/api/mainProcess'
|
||||||
|
|
||||||
const nodeModule = require('module') // eslint-disable-line @typescript-eslint/no-var-requires
|
const nodeModule = require('module') // eslint-disable-line @typescript-eslint/no-var-requires
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ function normalizePath (p: string): string {
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
const builtinPluginsPath = process.env.TERMINUS_DEV ? path.dirname(remote.app.getAppPath()) : path.join((process as any).resourcesPath, 'builtin-plugins')
|
const builtinPluginsPath = process.env.TABBY_DEV ? path.dirname(remote.app.getAppPath()) : path.join((process as any).resourcesPath, 'builtin-plugins')
|
||||||
|
|
||||||
const builtinModules = [
|
const builtinModules = [
|
||||||
'@angular/animations',
|
'@angular/animations',
|
||||||
|
@ -30,10 +30,10 @@ const builtinModules = [
|
||||||
'ngx-toastr',
|
'ngx-toastr',
|
||||||
'rxjs',
|
'rxjs',
|
||||||
'rxjs/operators',
|
'rxjs/operators',
|
||||||
'terminus-core',
|
'tabby-core',
|
||||||
'terminus-local',
|
'tabby-local',
|
||||||
'terminus-settings',
|
'tabby-settings',
|
||||||
'terminus-terminal',
|
'tabby-terminal',
|
||||||
'zone.js/dist/zone.js',
|
'zone.js/dist/zone.js',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -42,15 +42,15 @@ export type ProgressCallback = (current: number, total: number) => void // eslin
|
||||||
export function initModuleLookup (userPluginsPath: string): void {
|
export function initModuleLookup (userPluginsPath: string): void {
|
||||||
global['module'].paths.map((x: string) => nodeModule.globalPaths.push(normalizePath(x)))
|
global['module'].paths.map((x: string) => nodeModule.globalPaths.push(normalizePath(x)))
|
||||||
|
|
||||||
if (process.env.TERMINUS_DEV) {
|
if (process.env.TABBY_DEV) {
|
||||||
nodeModule.globalPaths.unshift(path.dirname(remote.app.getAppPath()))
|
nodeModule.globalPaths.unshift(path.dirname(remote.app.getAppPath()))
|
||||||
}
|
}
|
||||||
|
|
||||||
nodeModule.globalPaths.unshift(builtinPluginsPath)
|
nodeModule.globalPaths.unshift(builtinPluginsPath)
|
||||||
nodeModule.globalPaths.unshift(path.join(userPluginsPath, 'node_modules'))
|
nodeModule.globalPaths.unshift(path.join(userPluginsPath, 'node_modules'))
|
||||||
// nodeModule.globalPaths.unshift(path.join((process as any).resourcesPath, 'app.asar', 'node_modules'))
|
// nodeModule.globalPaths.unshift(path.join((process as any).resourcesPath, 'app.asar', 'node_modules'))
|
||||||
if (process.env.TERMINUS_PLUGINS) {
|
if (process.env.TABBY_PLUGINS) {
|
||||||
process.env.TERMINUS_PLUGINS.split(':').map(x => nodeModule.globalPaths.push(normalizePath(x)))
|
process.env.TABBY_PLUGINS.split(':').map(x => nodeModule.globalPaths.push(normalizePath(x)))
|
||||||
}
|
}
|
||||||
|
|
||||||
const cachedBuiltinModules = {}
|
const cachedBuiltinModules = {}
|
||||||
|
@ -79,7 +79,8 @@ export async function findPlugins (): Promise<PluginInfo[]> {
|
||||||
const paths = nodeModule.globalPaths
|
const paths = nodeModule.globalPaths
|
||||||
let foundPlugins: PluginInfo[] = []
|
let foundPlugins: PluginInfo[] = []
|
||||||
const candidateLocations: { pluginDir: string, packageName: string }[] = []
|
const candidateLocations: { pluginDir: string, packageName: string }[] = []
|
||||||
const PREFIX = 'terminus-'
|
const PREFIX = 'tabby-'
|
||||||
|
const LEGACY_PREFIX = 'terminus-'
|
||||||
|
|
||||||
const processedPaths = []
|
const processedPaths = []
|
||||||
|
|
||||||
|
@ -101,7 +102,7 @@ export async function findPlugins (): Promise<PluginInfo[]> {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
for (const packageName of pluginNames) {
|
for (const packageName of pluginNames) {
|
||||||
if (packageName.startsWith(PREFIX)) {
|
if (packageName.startsWith(PREFIX) || packageName.startsWith(LEGACY_PREFIX)) {
|
||||||
candidateLocations.push({ pluginDir, packageName })
|
candidateLocations.push({ pluginDir, packageName })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -114,7 +115,7 @@ export async function findPlugins (): Promise<PluginInfo[]> {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
const name = packageName.substring(PREFIX.length)
|
const name = packageName.startsWith(PREFIX) ? packageName.substring(PREFIX.length) : packageName.substring(LEGACY_PREFIX.length)
|
||||||
|
|
||||||
if (builtinModules.includes(packageName) && pluginDir !== builtinPluginsPath) {
|
if (builtinModules.includes(packageName) && pluginDir !== builtinPluginsPath) {
|
||||||
continue
|
continue
|
||||||
|
@ -129,7 +130,7 @@ export async function findPlugins (): Promise<PluginInfo[]> {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const info = JSON.parse(await fs.readFile(infoPath, { encoding: 'utf-8' }))
|
const info = JSON.parse(await fs.readFile(infoPath, { encoding: 'utf-8' }))
|
||||||
if (!info.keywords || !(info.keywords.includes('terminus-plugin') || info.keywords.includes('terminus-builtin-plugin'))) {
|
if (!info.keywords || !(info.keywords.includes('terminus-plugin') || info.keywords.includes('terminus-builtin-plugin') || !info.keywords.includes('tabby-plugin') || info.keywords.includes('tabby-builtin-plugin'))) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
let author = info.author
|
let author = info.author
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.terminus-logo {
|
.tabby-logo {
|
||||||
width: 120px;
|
width: 120px;
|
||||||
height: 120px;
|
height: 120px;
|
||||||
background: url('../assets/logo.svg');
|
background: url('../assets/logo.svg');
|
||||||
|
@ -48,7 +48,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.terminus-title {
|
.tabby-title {
|
||||||
color: #a1c5e4;
|
color: #a1c5e4;
|
||||||
font-family: 'Source Sans Pro';
|
font-family: 'Source Sans Pro';
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
"dist",
|
"dist",
|
||||||
"node_modules",
|
"node_modules",
|
||||||
"*/node_modules",
|
"*/node_modules",
|
||||||
"terminus*",
|
"tabby*",
|
||||||
"platforms"
|
"platforms"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@ const path = require('path')
|
||||||
const webpack = require('webpack')
|
const webpack = require('webpack')
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
name: 'terminus',
|
name: 'tabby',
|
||||||
target: 'node',
|
target: 'node',
|
||||||
entry: {
|
entry: {
|
||||||
'index.ignore': 'file-loader?name=index.html!pug-html-loader!' + path.resolve(__dirname, './index.pug'),
|
'index.ignore': 'file-loader?name=index.html!pug-html-loader!' + path.resolve(__dirname, './index.pug'),
|
||||||
|
@ -10,7 +10,7 @@ module.exports = {
|
||||||
preload: path.resolve(__dirname, 'src/entry.preload.ts'),
|
preload: path.resolve(__dirname, 'src/entry.preload.ts'),
|
||||||
bundle: path.resolve(__dirname, 'src/entry.ts'),
|
bundle: path.resolve(__dirname, 'src/entry.ts'),
|
||||||
},
|
},
|
||||||
mode: process.env.TERMINUS_DEV ? 'development' : 'production',
|
mode: process.env.TABBY_DEV ? 'development' : 'production',
|
||||||
optimization:{
|
optimization:{
|
||||||
minimize: false,
|
minimize: false,
|
||||||
},
|
},
|
||||||
|
|
|
@ -3,12 +3,12 @@ const webpack = require('webpack')
|
||||||
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
|
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
name: 'terminus-main',
|
name: 'tabby-main',
|
||||||
target: 'electron-main',
|
target: 'electron-main',
|
||||||
entry: {
|
entry: {
|
||||||
main: path.resolve(__dirname, 'lib/index.ts'),
|
main: path.resolve(__dirname, 'lib/index.ts'),
|
||||||
},
|
},
|
||||||
mode: process.env.TERMINUS_DEV ? 'development' : 'production',
|
mode: process.env.TABBY_DEV ? 'development' : 'production',
|
||||||
context: __dirname,
|
context: __dirname,
|
||||||
devtool: 'source-map',
|
devtool: 'source-map',
|
||||||
output: {
|
output: {
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
!macro customInit
|
!macro customInit
|
||||||
nsExec::Exec '"$LOCALAPPDATA\terminus\Update.exe" --uninstall -s'
|
nsExec::Exec '"$LOCALAPPDATA\tabby\Update.exe" --uninstall -s'
|
||||||
!macroend
|
!macroend
|
||||||
|
|
|
@ -11,7 +11,7 @@ module.exports = async function (params) {
|
||||||
}
|
}
|
||||||
console.log('afterSign hook triggered', params)
|
console.log('afterSign hook triggered', params)
|
||||||
|
|
||||||
let appId = 'org.terminus'
|
let appId = 'org.tabby'
|
||||||
|
|
||||||
let appPath = path.join(params.appOutDir, params._pathOverride || `${params.packager.appInfo.productFilename}.app`)
|
let appPath = path.join(params.appOutDir, params._pathOverride || `${params.packager.appInfo.productFilename}.app`)
|
||||||
if (!fs.existsSync(appPath)) {
|
if (!fs.existsSync(appPath)) {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
appId: org.terminus
|
appId: org.tabby
|
||||||
productName: Terminus
|
productName: Tabby
|
||||||
compression: normal
|
compression: normal
|
||||||
npmRebuild: false
|
npmRebuild: false
|
||||||
afterSign: "./build/mac/afterSignHook.js"
|
afterSign: "./build/mac/afterSignHook.js"
|
||||||
|
@ -39,18 +39,18 @@ publish:
|
||||||
|
|
||||||
win:
|
win:
|
||||||
icon: "./build/windows/icon.ico"
|
icon: "./build/windows/icon.ico"
|
||||||
artifactName: terminus-${version}-portable.${ext}
|
artifactName: tabby-${version}-portable.${ext}
|
||||||
rfc3161TimeStampServer: http://sha256timestamp.ws.symantec.com/sha256/timestamp
|
rfc3161TimeStampServer: http://sha256timestamp.ws.symantec.com/sha256/timestamp
|
||||||
nsis:
|
nsis:
|
||||||
oneClick: false
|
oneClick: false
|
||||||
artifactName: terminus-${version}-setup.${ext}
|
artifactName: tabby-${version}-setup.${ext}
|
||||||
installerIcon: "./build/windows/icon.ico"
|
installerIcon: "./build/windows/icon.ico"
|
||||||
allowToChangeInstallationDirectory: true
|
allowToChangeInstallationDirectory: true
|
||||||
|
|
||||||
mac:
|
mac:
|
||||||
category: public.app-category.video
|
category: public.app-category.video
|
||||||
icon: "./build/mac/icon.icns"
|
icon: "./build/mac/icon.icns"
|
||||||
artifactName: terminus-${version}-macos-${env.ARCH}.${ext}
|
artifactName: tabby-${version}-macos-${env.ARCH}.${ext}
|
||||||
hardenedRuntime: true
|
hardenedRuntime: true
|
||||||
entitlements: "./build/mac/entitlements.plist"
|
entitlements: "./build/mac/entitlements.plist"
|
||||||
entitlementsInherit: "./build/mac/entitlements.plist"
|
entitlementsInherit: "./build/mac/entitlements.plist"
|
||||||
|
@ -68,11 +68,11 @@ mac:
|
||||||
linux:
|
linux:
|
||||||
category: Utility
|
category: Utility
|
||||||
icon: "./build/icons"
|
icon: "./build/icons"
|
||||||
artifactName: terminus-${version}-linux.${ext}
|
artifactName: tabby-${version}-linux.${ext}
|
||||||
executableArgs:
|
executableArgs:
|
||||||
- "--no-sandbox"
|
- "--no-sandbox"
|
||||||
desktop:
|
desktop:
|
||||||
StartupWMClass: terminus
|
StartupWMClass: tabby
|
||||||
snap:
|
snap:
|
||||||
plugs:
|
plugs:
|
||||||
- default
|
- default
|
||||||
|
@ -91,7 +91,7 @@ deb:
|
||||||
afterInstall: build/linux/after-install.tpl
|
afterInstall: build/linux/after-install.tpl
|
||||||
fpm:
|
fpm:
|
||||||
- '--replaces'
|
- '--replaces'
|
||||||
- 'terminus'
|
- 'terminus-terminal'
|
||||||
pacman:
|
pacman:
|
||||||
depends:
|
depends:
|
||||||
- gnome-keyring
|
- gnome-keyring
|
||||||
|
@ -103,4 +103,4 @@ rpm:
|
||||||
- '--rpm-rpmbuild-define'
|
- '--rpm-rpmbuild-define'
|
||||||
- '_build_id_links none'
|
- '_build_id_links none'
|
||||||
- '--replaces'
|
- '--replaces'
|
||||||
- 'terminus'
|
- 'terminus-terminal'
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
<key>NSMenuItem</key>
|
<key>NSMenuItem</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>default</key>
|
<key>default</key>
|
||||||
<string>Open Terminus here</string>
|
<string>Open Tabby here</string>
|
||||||
</dict>
|
</dict>
|
||||||
<key>NSMessage</key>
|
<key>NSMessage</key>
|
||||||
<string>runWorkflowAsService</string>
|
<string>runWorkflowAsService</string>
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
|
@ -59,7 +59,7 @@
|
||||||
<key>ActionParameters</key>
|
<key>ActionParameters</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>COMMAND_STRING</key>
|
<key>COMMAND_STRING</key>
|
||||||
<string>/Applications/Terminus.app/Contents/MacOS/terminus open "$1"</string>
|
<string>/Applications/Tabby.app/Contents/MacOS/tabby open "$1"</string>
|
||||||
<key>CheckedForUserDefaultShell</key>
|
<key>CheckedForUserDefaultShell</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>inputMethod</key>
|
<key>inputMethod</key>
|
|
@ -12,7 +12,7 @@
|
||||||
<key>NSMenuItem</key>
|
<key>NSMenuItem</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>default</key>
|
<key>default</key>
|
||||||
<string>Paste path into Terminus</string>
|
<string>Paste path into Tabby</string>
|
||||||
</dict>
|
</dict>
|
||||||
<key>NSMessage</key>
|
<key>NSMessage</key>
|
||||||
<string>runWorkflowAsService</string>
|
<string>runWorkflowAsService</string>
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
|
@ -59,7 +59,7 @@
|
||||||
<key>ActionParameters</key>
|
<key>ActionParameters</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>COMMAND_STRING</key>
|
<key>COMMAND_STRING</key>
|
||||||
<string>/Applications/Terminus.app/Contents/MacOS/terminus paste --escape "$1"</string>
|
<string>/Applications/Tabby.app/Contents/MacOS/tabby paste --escape "$1"</string>
|
||||||
<key>CheckedForUserDefaultShell</key>
|
<key>CheckedForUserDefaultShell</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>inputMethod</key>
|
<key>inputMethod</key>
|
10
package.json
10
package.json
|
@ -64,13 +64,13 @@
|
||||||
"**/graceful-fs": "^4.2.4"
|
"**/graceful-fs": "^4.2.4"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "npm run build:typings && webpack --color --config app/webpack.main.config.js && webpack --color --config app/webpack.config.js && webpack --color --config terminus-core/webpack.config.js && webpack --color --config terminus-settings/webpack.config.js && webpack --color --config terminus-terminal/webpack.config.js && webpack --color --config terminus-local/webpack.config.js && webpack --color --config terminus-plugin-manager/webpack.config.js && webpack --color --config terminus-community-color-schemes/webpack.config.js && webpack --color --config terminus-ssh/webpack.config.js && webpack --color --config terminus-serial/webpack.config.js && webpack --color --config terminus-electron/webpack.config.js && webpack --color --config terminus-web/webpack.config.js && webpack --color --config web/webpack.config.js",
|
"build": "npm run build:typings && webpack --color --config app/webpack.main.config.js && webpack --color --config app/webpack.config.js && webpack --color --config tabby-core/webpack.config.js && webpack --color --config tabby-settings/webpack.config.js && webpack --color --config tabby-terminal/webpack.config.js && webpack --color --config tabby-local/webpack.config.js && webpack --color --config tabby-plugin-manager/webpack.config.js && webpack --color --config tabby-community-color-schemes/webpack.config.js && webpack --color --config tabby-ssh/webpack.config.js && webpack --color --config tabby-serial/webpack.config.js && webpack --color --config tabby-electron/webpack.config.js && webpack --color --config tabby-web/webpack.config.js && webpack --color --config web/webpack.config.js",
|
||||||
"build:typings": "node scripts/build-typings.js",
|
"build:typings": "node scripts/build-typings.js",
|
||||||
"watch": "cross-env TERMINUS_DEV=1 webpack --progress --color --watch",
|
"watch": "cross-env TABBY_DEV=1 webpack --progress --color --watch",
|
||||||
"start": "cross-env TERMINUS_DEV=1 electron app --debug --inspect",
|
"start": "cross-env TABBY_DEV=1 electron app --debug --inspect",
|
||||||
"start:prod": "electron app --debug",
|
"start:prod": "electron app --debug",
|
||||||
"prod": "cross-env TERMINUS_DEV=1 electron app",
|
"prod": "cross-env TABBY_DEV=1 electron app",
|
||||||
"docs": "typedoc --out docs/api --tsconfig terminus-core/src/tsconfig.typings.json terminus-core/src/index.ts && typedoc --out docs/api/terminal --tsconfig terminus-terminal/tsconfig.typings.json terminus-terminal/src/index.ts && typedoc --out docs/api/local --tsconfig terminus-local/tsconfig.typings.json terminus-local/src/index.ts && typedoc --out docs/api/settings --tsconfig terminus-settings/tsconfig.typings.json terminus-settings/src/index.ts",
|
"docs": "typedoc --out docs/api --tsconfig tabby-core/src/tsconfig.typings.json tabby-core/src/index.ts && typedoc --out docs/api/terminal --tsconfig tabby-terminal/tsconfig.typings.json tabby-terminal/src/index.ts && typedoc --out docs/api/local --tsconfig tabby-local/tsconfig.typings.json tabby-local/src/index.ts && typedoc --out docs/api/settings --tsconfig tabby-settings/tsconfig.typings.json tabby-settings/src/index.ts",
|
||||||
"lint": "eslint --ext ts */src */lib",
|
"lint": "eslint --ext ts */src */lib",
|
||||||
"postinstall": "node ./scripts/install-deps.js",
|
"postinstall": "node ./scripts/install-deps.js",
|
||||||
"patch": "patch-package; cd web; patch-package"
|
"patch": "patch-package; cd web; patch-package"
|
||||||
|
|
|
@ -5,9 +5,9 @@ index 25a159e..d8a0262 100644
|
||||||
@@ -165,7 +165,7 @@ class AppInfo {
|
@@ -165,7 +165,7 @@ class AppInfo {
|
||||||
get linuxPackageName() {
|
get linuxPackageName() {
|
||||||
const name = this.name; // https://github.com/electron-userland/electron-builder/issues/2963
|
const name = this.name; // https://github.com/electron-userland/electron-builder/issues/2963
|
||||||
|
|
||||||
- return name.startsWith("@") ? this.sanitizedProductName : name;
|
- return name.startsWith("@") ? this.sanitizedProductName : name;
|
||||||
+ return 'terminus-terminal'
|
+ return 'tabby-terminal'
|
||||||
}
|
}
|
||||||
|
|
||||||
get sanitizedName() {
|
get sanitizedName() {
|
||||||
|
|
|
@ -4,7 +4,7 @@ const path = require('path')
|
||||||
const vars = require('./vars')
|
const vars = require('./vars')
|
||||||
|
|
||||||
let lifecycles = []
|
let lifecycles = []
|
||||||
for (let dir of ['app', 'terminus-core', 'terminus-local', 'terminus-ssh', 'terminus-terminal']) {
|
for (let dir of ['app', 'tabby-core', 'tabby-local', 'tabby-ssh', 'tabby-terminal']) {
|
||||||
const build = rebuild({
|
const build = rebuild({
|
||||||
buildPath: path.resolve(__dirname, '../' + dir),
|
buildPath: path.resolve(__dirname, '../' + dir),
|
||||||
electronVersion: vars.electronVersion,
|
electronVersion: vars.electronVersion,
|
||||||
|
|
|
@ -11,7 +11,7 @@ sh.mkdir('-p', target)
|
||||||
fs.writeFileSync(path.join(target, 'package.json'), '{}')
|
fs.writeFileSync(path.join(target, 'package.json'), '{}')
|
||||||
sh.cd(target)
|
sh.cd(target)
|
||||||
vars.builtinPlugins.forEach(plugin => {
|
vars.builtinPlugins.forEach(plugin => {
|
||||||
if (plugin === 'terminus-web') {
|
if (plugin === 'tabby-web') {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
log.info('install', plugin)
|
log.info('install', plugin)
|
||||||
|
|
|
@ -14,16 +14,16 @@ if (exports.version.includes('-c')) {
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.builtinPlugins = [
|
exports.builtinPlugins = [
|
||||||
'terminus-core',
|
'tabby-core',
|
||||||
'terminus-settings',
|
'tabby-settings',
|
||||||
'terminus-terminal',
|
'tabby-terminal',
|
||||||
'terminus-electron',
|
'tabby-electron',
|
||||||
'terminus-local',
|
'tabby-local',
|
||||||
'terminus-web',
|
'tabby-web',
|
||||||
'terminus-community-color-schemes',
|
'tabby-community-color-schemes',
|
||||||
'terminus-plugin-manager',
|
'tabby-plugin-manager',
|
||||||
'terminus-ssh',
|
'tabby-ssh',
|
||||||
'terminus-serial',
|
'tabby-serial',
|
||||||
]
|
]
|
||||||
exports.bundledModules = [
|
exports.bundledModules = [
|
||||||
'@angular',
|
'@angular',
|
||||||
|
|
|
@ -1,26 +1,26 @@
|
||||||
name: terminus
|
name: tabby
|
||||||
version: '1.0.0'
|
version: '1.0.0'
|
||||||
summary: A terminal for a modern age
|
summary: A terminal for a modern age
|
||||||
description: |
|
description: |
|
||||||
Terminus is a terminal heavily inspired by Hyper. It is, however, designed for people who need to get things done.
|
Tabby is a local, SSH and serial terminal heavily inspired by Hyper.
|
||||||
|
|
||||||
grade: devel
|
grade: devel
|
||||||
confinement: devmode
|
confinement: devmode
|
||||||
|
|
||||||
apps:
|
apps:
|
||||||
terminus:
|
tabby:
|
||||||
command: opt/terminus/terminus
|
command: opt/tabby/tabby
|
||||||
|
|
||||||
parts:
|
parts:
|
||||||
app:
|
app:
|
||||||
plugin: nodejs
|
plugin: nodejs
|
||||||
source: .
|
source: .
|
||||||
build-packages:
|
build-packages:
|
||||||
- libfontconfig-dev
|
- libfontconfig-dev
|
||||||
override-build: |
|
override-build: |
|
||||||
yarn
|
yarn
|
||||||
./scripts/build-native.js
|
./scripts/build-native.js
|
||||||
yarn run build
|
yarn run build
|
||||||
./scripts/build-linux.js
|
./scripts/build-linux.js
|
||||||
mkdir -p $SNAPCRAFT_PART_INSTALL/opt/terminus || true
|
mkdir -p $SNAPCRAFT_PART_INSTALL/opt/tabby || true
|
||||||
cp -ar dist/linux-unpacked/* $SNAPCRAFT_PART_INSTALL/opt/terminus/
|
cp -ar dist/linux-unpacked/* $SNAPCRAFT_PART_INSTALL/opt/tabby/
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
"name": "terminus-community-color-schemes",
|
"name": "tabby-community-color-schemes",
|
||||||
"version": "1.0.140",
|
"version": "1.0.140",
|
||||||
"description": "Community color schemes for Terminus",
|
"description": "Community color schemes for Tabby",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"terminus-builtin-plugin"
|
"tabby-builtin-plugin"
|
||||||
],
|
],
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"typings": "typings/index.d.ts",
|
"typings": "typings/index.d.ts",
|
||||||
|
@ -18,7 +18,7 @@
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@angular/core": "^9.1.9",
|
"@angular/core": "^9.1.9",
|
||||||
"terminus-core": "*",
|
"tabby-core": "*",
|
||||||
"terminus-terminal": "*"
|
"tabby-terminal": "*"
|
||||||
}
|
}
|
||||||
}
|
}
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue