Compare commits
1
Commits
main
..
609d4c1dae
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
609d4c1dae |
@@ -1,3 +0,0 @@
|
||||
[tools]
|
||||
node = "26"
|
||||
pnpm = "12.3.4"
|
||||
@@ -0,0 +1 @@
|
||||
25
|
||||
@@ -28,65 +28,3 @@ MacOS tiling WMs, mainly [Aerospace](https://github.com/nikitabobko/AeroSpace) (
|
||||
- complicated window dragging features and uis
|
||||
- Aerospace supports control + drag to combine windows while moving with the mouse, and normal window dragging.
|
||||
|
||||
## Installation
|
||||
|
||||
Aerospike isn't on the GNOME extension store yet, so install it from source.
|
||||
This builds the extension locally and drops it into your user's extension dir.
|
||||
Requires [just](https://github.com/casey/just) as the command runner, plus the
|
||||
same build toolchain used for development (see [Development](#development)):
|
||||
[mise](https://mise.jdx.dev/) for managing tool versions (`node` and `pnpm`),
|
||||
and `glib2` for `glib-compile-schemas`.
|
||||
|
||||
Arch Linux:
|
||||
|
||||
```bash
|
||||
sudo pacman -S git just mise glib2 # mise needs its shell hook: https://mise.jdx.dev/getting-started.html#shells
|
||||
```
|
||||
|
||||
Clone and install:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/lucasoskorep/aerospike-gnome
|
||||
cd aerospike-gnome
|
||||
mise install
|
||||
just install
|
||||
```
|
||||
|
||||
After installing from source, enable it (toggle in the Extensions app, or):
|
||||
|
||||
```bash
|
||||
gnome-extensions enable aerospike@lucaso.io
|
||||
```
|
||||
|
||||
Re-login or restart the shell (`Alt+F2` → `r` on X11) to pick it up.
|
||||
|
||||
## Development
|
||||
|
||||
Building and debugging locally needs a few extra tools:
|
||||
|
||||
- `just` — the command runner
|
||||
- `mise` — runtime & tool manager (pins `node` and `pnpm` in `.mise.toml`)
|
||||
- `glib2` — provides `glib-compile-schemas` for compiling the settings schema
|
||||
|
||||
Arch Linux:
|
||||
|
||||
```bash
|
||||
sudo pacman -S just mise glib2
|
||||
```
|
||||
|
||||
Install the pinned tools with mise (defined in `.mise.toml`):
|
||||
|
||||
```bash
|
||||
mise install
|
||||
```
|
||||
|
||||
Then:
|
||||
|
||||
```bash
|
||||
just install # install deps + build + drop into the extension dir
|
||||
just lint # lint
|
||||
just test # run the test suite
|
||||
just test-watch # run tests in watch mode
|
||||
just live-debug # tail gnome-shell logs while you poke at it
|
||||
```
|
||||
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
import eslint from "@eslint/js";
|
||||
import tseslint from "typescript-eslint";
|
||||
import jsdoc from "eslint-plugin-jsdoc";
|
||||
|
||||
export default tseslint.config(
|
||||
eslint.configs.recommended,
|
||||
...tseslint.configs.recommended,
|
||||
jsdoc.configs["flat/recommended-typescript"],
|
||||
{
|
||||
languageOptions: {
|
||||
parserOptions: {
|
||||
projectService: true,
|
||||
tsconfigRootDir: import.meta.dirname,
|
||||
},
|
||||
},
|
||||
rules: {
|
||||
"jsdoc/require-jsdoc": "off",
|
||||
"jsdoc/require-param-description": "off",
|
||||
"jsdoc/require-returns-description": "off",
|
||||
"jsdoc/require-returns": "off",
|
||||
"@typescript-eslint/no-unused-vars": [
|
||||
"warn",
|
||||
{ argsIgnorePattern: "^_", varsIgnorePattern: "^_" },
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
ignores: ["dist/", "node_modules/", "*.js"],
|
||||
},
|
||||
);
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Aerospike WM",
|
||||
"name": "aerospike",
|
||||
"description": "I3 Like Tiling Window Manager for Gnome",
|
||||
"uuid": "aerospike@lucaso.io",
|
||||
"settings-schema": "org.gnome.shell.extensions.aerospike",
|
||||
@@ -9,5 +9,5 @@
|
||||
"50"
|
||||
],
|
||||
"gettext-domain": "aerospike@lucaso.io",
|
||||
"url": "https://github.com/lucasoskorep/aerospike-gnome"
|
||||
"url": "https://gitea.chaosdev.gay/lucasoskorep/aerospike@lucaso.io"
|
||||
}
|
||||
|
||||
+8
-11
@@ -2,7 +2,6 @@
|
||||
"name": "aerospike",
|
||||
"version": "0.2.4",
|
||||
"description": "Simple, Opinionated Tiling Window Manager for Gnome written in Typescript",
|
||||
"packageManager": "pnpm@12.3.4",
|
||||
"type": "module",
|
||||
"private": true,
|
||||
"repository": {
|
||||
@@ -25,17 +24,15 @@
|
||||
"test:coverage": "jest --coverage"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@eslint/js": "^10.0.1",
|
||||
"@girs/gjs": "^4.7.0",
|
||||
"@girs/gnome-shell": "^50.0.4",
|
||||
"@jest/globals": "^30.5.1",
|
||||
"@girs/gjs": "4.0.4",
|
||||
"@girs/gnome-shell": "50.0.0",
|
||||
"@jest/globals": "^30.4.1",
|
||||
"@types/jest": "^30.0.0",
|
||||
"eslint": "^10.10.0",
|
||||
"eslint-plugin-jsdoc": "^64.3.6",
|
||||
"jest": "^30.5.1",
|
||||
"ts-jest": "^29.4.12",
|
||||
"typescript": "^5.9.3",
|
||||
"typescript-eslint": "^8.69.0"
|
||||
"eslint": "^10.5.0",
|
||||
"eslint-plugin-jsdoc": "^63.0.2",
|
||||
"jest": "^30.4.2",
|
||||
"ts-jest": "^29.4.11",
|
||||
"typescript": "^6.0.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"@girs/mtk-17": "17.0.0-4.0.4"
|
||||
|
||||
Generated
+1184
-1629
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,2 @@
|
||||
allowBuilds:
|
||||
'@parcel/watcher': true
|
||||
unrs-resolver: true
|
||||
|
||||
Reference in New Issue
Block a user