mirror of
https://github.com/zephrynis/nix-flake.git
synced 2026-02-18 20:21:53 +00:00
feat: make AGS colorshell configuration fully declarative
- Add complete colorshell v2.0.3 configuration to home/ags-config/ - Disable runner plugin and NightLight tile (incompatible with NixOS) - Customize SCSS with full opacity (no transparency) - Add dark pale blue color scheme in home/pywal-colors/ - Configure Papirus-Dark icon theme via home-manager - Make ~/.config/ags/ immutable and managed by Nix store - Auto-deploy pywal colors to ~/.cache/wal/colors.json All AGS configuration is now reproducible and version controlled.
This commit is contained in:
16
home/ags-config/cli/modules/devel.ts
Normal file
16
home/ags-config/cli/modules/devel.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
import { Gtk } from "ags/gtk4";
|
||||
import { Cli } from "..";
|
||||
|
||||
|
||||
export default {
|
||||
prefix: "dev",
|
||||
help: "development tools to help debugging colorshell",
|
||||
commands: [{
|
||||
name: "inspector",
|
||||
help: "open the gtk's visual inspector",
|
||||
onCalled: () => {
|
||||
Gtk.Window.set_interactive_debugging(true);
|
||||
return "Opening GTK Inspector..."
|
||||
}
|
||||
}]
|
||||
} satisfies Cli.Module;
|
||||
46
home/ags-config/cli/modules/media.ts
Normal file
46
home/ags-config/cli/modules/media.ts
Normal file
@@ -0,0 +1,46 @@
|
||||
import { Cli } from "..";
|
||||
|
||||
|
||||
export default {
|
||||
prefix: "media",
|
||||
help: "manage colorshell's active player",
|
||||
commands: [
|
||||
{
|
||||
name: "play",
|
||||
help: "resume/start active player's media",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "pause",
|
||||
help: "pause the active player",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "play-pause",
|
||||
help: "toggle pause/resume the active player",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "stop",
|
||||
help: "stop the active player (if compatible)",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "previous",
|
||||
help: "go back to previous media in the active player",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "next",
|
||||
help: "jump to the next media in active player",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "bus-name",
|
||||
help: "retrieve the active player's mpris bus name",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "list",
|
||||
help: "list available players implementing mpris",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "select",
|
||||
help: "resume/start active player's media",
|
||||
onCalled: (_, busName) => "TODO"
|
||||
}
|
||||
]
|
||||
} satisfies Cli.Module;
|
||||
27
home/ags-config/cli/modules/volume.ts
Normal file
27
home/ags-config/cli/modules/volume.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { Cli } from "..";
|
||||
|
||||
|
||||
export default {
|
||||
prefix: "volume",
|
||||
help: "manage audio device volume/sensitivity. available devices are sink(speaker) and source(microphone).\
|
||||
example usage: `colorshell volume increase sink 5%`",
|
||||
commands: [
|
||||
{
|
||||
name: "increase",
|
||||
help: "increase volume/sensitivity of a sink/source",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "decrease",
|
||||
help: "decrease volume/sensitivity of a sink/source",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "set",
|
||||
help: "set the volume/sensitivity of a sink/source",
|
||||
onCalled: () => "TODO"
|
||||
}, {
|
||||
name: "mute",
|
||||
help: "toggle-mute a sink/source's audio",
|
||||
onCalled: () => "TODO"
|
||||
}
|
||||
]
|
||||
} satisfies Cli.Module;
|
||||
46
home/ags-config/cli/modules/windows.ts
Normal file
46
home/ags-config/cli/modules/windows.ts
Normal file
@@ -0,0 +1,46 @@
|
||||
import { Cli } from "..";
|
||||
|
||||
|
||||
export default [
|
||||
{
|
||||
name: "open",
|
||||
onCalled: (_, data) => {
|
||||
return {
|
||||
type: "out",
|
||||
content: "TODO"
|
||||
}
|
||||
}
|
||||
}, {
|
||||
name: "toggle",
|
||||
onCalled: (_, data) => {
|
||||
return {
|
||||
type: "out",
|
||||
content: "TODO"
|
||||
}
|
||||
}
|
||||
}, {
|
||||
name: "close",
|
||||
onCalled: (_, data) => {
|
||||
return {
|
||||
type: "out",
|
||||
content: "TODO"
|
||||
}
|
||||
}
|
||||
}, {
|
||||
name: "windows",
|
||||
onCalled: () => {
|
||||
return {
|
||||
type: "out",
|
||||
content: "TODO"
|
||||
}
|
||||
}
|
||||
}, {
|
||||
name: "reopen",
|
||||
onCalled: () => {
|
||||
return {
|
||||
type: "out",
|
||||
content: "TODO"
|
||||
}
|
||||
}
|
||||
}
|
||||
] satisfies Array<Cli.Command>;
|
||||
Reference in New Issue
Block a user