Add pacman artifact and update product tagline (#412)

This adds support for Arch Linux via pacman. It also updates the product tagline in package.json and the "About" modal. It also removes the unused "Help" menu and updates the copyright year in About and fixes the window icon display on Linux.
This commit is contained in:
Evan Simkowitz 2024-03-08 14:05:21 -08:00 committed by GitHub
parent a2795fb74d
commit 358ffb6d50
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 17 additions and 13 deletions

View File

@ -27,7 +27,7 @@ jobs:
if: matrix.platform == 'linux' if: matrix.platform == 'linux'
run: | run: |
sudo apt-get update sudo apt-get update
sudo apt-get install rpm sudo apt-get install --no-install-recommends -y libarchive-tools libopenjp2-tools rpm
- uses: actions/setup-go@v5 - uses: actions/setup-go@v5
with: with:
go-version: ${{env.GO_VERSION}} go-version: ${{env.GO_VERSION}}

View File

@ -9,7 +9,7 @@
# Wave Terminal # Wave Terminal
An open-source, cross-platform, AI-integrated, modern terminal for seamless workflows. Wave is an open-source AI-native terminal built for seamless workflows.
Wave isn't just another terminal emulator; it's a rethink on how terminals are built. Wave combines command line with the power of the open web to help veteran CLI users and new developers alike. Wave isn't just another terminal emulator; it's a rethink on how terminals are built. Wave combines command line with the power of the open web to help veteran CLI users and new developers alike.
@ -17,13 +17,14 @@ Wave isn't just another terminal emulator; it's a rethink on how terminals are b
- Persistent sessions that can restore state across network disconnections and reboots - Persistent sessions that can restore state across network disconnections and reboots
- Searchable contextual command history across all remote sessions (saved locally) - Searchable contextual command history across all remote sessions (saved locally)
- Workspaces, tabs, and command blocks to keep you organized - Workspaces, tabs, and command blocks to keep you organized
- CodeEdit, to edit local and remote files with a VSCode-like inline editor
- AI Integration with ChatGPT (or ChatGPT compatible APIs) to help write commands and get answers inline - AI Integration with ChatGPT (or ChatGPT compatible APIs) to help write commands and get answers inline
![WaveTerm Screenshot](./assets/wave-screenshot.jpeg) ![WaveTerm Screenshot](./assets/wave-screenshot.jpeg)
## Installation ## Installation
Wave Terminal works with MacOS and Linux (preliminary). Wave Terminal works with MacOS and Linux.
Install Wave Terminal from: [www.waveterm.dev/download](https://www.waveterm.dev/download) Install Wave Terminal from: [www.waveterm.dev/download](https://www.waveterm.dev/download)
@ -49,7 +50,7 @@ brew install --cask wave
## Contributing ## Contributing
Wave uses Github Project for tracking issues. Wave uses Github Issues for issue tracking.
Find more information in our [Contributions Guide](CONTRIBUTING.md), which includes: Find more information in our [Contributions Guide](CONTRIBUTING.md), which includes:

View File

@ -73,7 +73,7 @@ const config = {
executableName: pkg.productName, executableName: pkg.productName,
category: "TerminalEmulator", category: "TerminalEmulator",
icon: "public/waveterm.icns", icon: "public/waveterm.icns",
target: ["zip", "deb", "rpm", "AppImage"], target: ["zip", "deb", "rpm", "AppImage", "pacman"],
synopsis: pkg.description, synopsis: pkg.description,
description: null, description: null,
desktop: { desktop: {

View File

@ -5,7 +5,7 @@
"email": "info@commandline.dev" "email": "info@commandline.dev"
}, },
"productName": "Wave", "productName": "Wave",
"description": "An open-source, cross-platform, AI-integrated, modern terminal for seamless workflows.", "description": "An Open-Source, AI-Native, Terminal Built for Seamless Workflows",
"version": "0.7.0", "version": "0.7.0",
"main": "dist/emain.js", "main": "dist/emain.js",
"license": "Apache-2.0", "license": "Apache-2.0",

View File

@ -75,6 +75,7 @@ class AboutModal extends React.Component<{}, {}> {
} }
render() { render() {
const currentDate = new Date();
return ( return (
<Modal className="about-modal"> <Modal className="about-modal">
<Modal.Header onClose={this.closeModal} title="About" /> <Modal.Header onClose={this.closeModal} title="About" />
@ -86,9 +87,9 @@ class AboutModal extends React.Component<{}, {}> {
<div className="text-wrapper"> <div className="text-wrapper">
<div>Wave Terminal</div> <div>Wave Terminal</div>
<div className="text-standard"> <div className="text-standard">
Modern Terminal for Open-Source AI-Native Terminal
<br /> <br />
Seamless Workflow Built for Seamless Workflows
</div> </div>
</div> </div>
</div> </div>
@ -122,7 +123,9 @@ class AboutModal extends React.Component<{}, {}> {
Acknowledgements Acknowledgements
</LinkButton> </LinkButton>
</div> </div>
<div className="about-section text-standard">&copy; 2023 Command Line Inc.</div> <div className="about-section text-standard">
&copy; {currentDate.getFullYear()} Command Line Inc.
</div>
</div> </div>
</Modal> </Modal>
); );

View File

@ -279,9 +279,6 @@ const menuTemplate: Electron.MenuItemConstructorOptions[] = [
{ {
role: "windowMenu", role: "windowMenu",
}, },
{
role: "help",
},
]; ];
const menu = electron.Menu.buildFromTemplate(menuTemplate); const menu = electron.Menu.buildFromTemplate(menuTemplate);
@ -330,7 +327,10 @@ function createMainWindow(clientData: ClientDataType | null): Electron.BrowserWi
height: bounds.height, height: bounds.height,
minWidth: 800, minWidth: 800,
minHeight: 600, minHeight: 600,
icon: unamePlatform == "linux" ? "public/logos/wave-logo-dark.png" : undefined, icon:
unamePlatform == "linux"
? path.join(getElectronAppBasePath(), "public/logos/wave-logo-dark.png")
: undefined,
webPreferences: { webPreferences: {
preload: path.join(getElectronAppBasePath(), DistDir, "preload.js"), preload: path.join(getElectronAppBasePath(), DistDir, "preload.js"),
}, },