fix: replace walker with custom launcher

This commit is contained in:
Nickolaj Jepsen 2025-03-02 01:38:50 +01:00
parent 4a5a8d3ba6
commit 352a9c08d1
8 changed files with 18 additions and 524 deletions

59
flake.lock generated
View file

@ -197,11 +197,11 @@
"treefmt-nix": "treefmt-nix_2"
},
"locked": {
"lastModified": 1740431835,
"narHash": "sha256-47hKeFlhMu2OSSQ2xp+2LGrEWpAYZtjyUKc91qzo3mc=",
"lastModified": 1740875242,
"narHash": "sha256-b1aP36Kt/B4JMtmUw9m2RSy4O+kwqr0eQ75488vd0xk=",
"owner": "nickolaj-jepsen",
"repo": "fireproof-shell",
"rev": "a561a829ad1b02114c64e25faa76c0111fca0b34",
"rev": "221ecb1e53b10fe2151fd03277ce0cf5616c0a68",
"type": "github"
},
"original": {
@ -900,22 +900,6 @@
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1738142207,
"narHash": "sha256-NGqpVVxNAHwIicXpgaVqJEJWeyqzoQJ9oc8lnK9+WC4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9d3ae807ebd2981d593cddd0080856873139aa40",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": "flake-parts_4",
@ -1000,8 +984,7 @@
"nixpkgs": "nixpkgs_4",
"nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur",
"treefmt-nix": "treefmt-nix_4",
"walker": "walker"
"treefmt-nix": "treefmt-nix_4"
}
},
"systems": {
@ -1049,21 +1032,6 @@
"type": "github"
}
},
"systems_4": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
"owner": "nix-systems",
"repo": "default-linux",
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default-linux",
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
@ -1142,25 +1110,6 @@
"type": "github"
}
},
"walker": {
"inputs": {
"nixpkgs": "nixpkgs_6",
"systems": "systems_4"
},
"locked": {
"lastModified": 1740555016,
"narHash": "sha256-GtgPchR4uzYenq6W+uZWxnpP+fLQk1p0q6UTr1ql3yk=",
"owner": "abenz1267",
"repo": "walker",
"rev": "971a8de7f139552d0bf1e40c0d9852ea5dd211ee",
"type": "github"
},
"original": {
"owner": "abenz1267",
"repo": "walker",
"type": "github"
}
},
"xdph": {
"inputs": {
"hyprland-protocols": [

View file

@ -58,9 +58,6 @@
fireproof-shell.url = "github:nickolaj-jepsen/fireproof-shell";
fireproof-shell.inputs.nixpkgs.follows = "nixpkgs";
walker.url = "github:abenz1267/walker";
# walker.inputs.nixpkgs.follows = "nixpkgs";
hyprland.url = "github:hyprwm/Hyprland";
# hyprland.inputs.nixpkgs.follows = "nixpkgs";

View file

@ -3,15 +3,11 @@ _: {
experimental-features = "nix-command flakes";
substituters = [
"https://hyprland.cachix.org"
"https://walker.cachix.org"
"https://walker-git.cachix.org"
"https://nix-community.cachix.org"
];
trusted-public-keys = [
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
"walker.cachix.org-1:fG8q+uAaMqhsMxWjwvk0IMb4mFPFLqHjuvfwQxE4oJM="
"walker-git.cachix.org-1:vmC0ocfPWh0S/vRAQGtChuiZBTAe4wiKDeyyXM0/7pM="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
};

View file

@ -2,14 +2,23 @@
config,
inputs,
pkgs,
pkgsUnstable,
...
}: {
}: let
fireproofPkgs = inputs.fireproof-shell.packages.${pkgs.system};
in {
environment.systemPackages = [
inputs.fireproof-shell.packages.${pkgs.system}.fireproof-shell
fireproofPkgs.fireproof-shell
fireproofPkgs.fireproof-ipc
pkgsUnstable.astal.io
];
programs.fireproof-shell = {
enable = true;
systemd = true;
monitor.primary = (builtins.head config.monitors).name or "";
settings = {
monitor.main = (builtins.head config.monitors).name or "";
launcher.uwsm = true;
};
};
fireproof.home-manager.wayland.windowManager.hyprland.settings.execr = [ "pkill .fireproof-shel; fireproof-shell" ];
}

View file

@ -245,7 +245,7 @@ in {
bind = [
"SUPER, RETURN, exec, ${getExe config.programs.uwsm.package} app -- ${cfg.default-apps.terminal}"
"SUPER, BACKSPACE, killactive"
"SUPER, SPACE, exec, ${getExe config.programs.uwsm.package} app -- walker"
"SUPER, SPACE, exec, astal launcher"
"SUPER, p, exec, ${getExe config.programs.uwsm.package} app -- loginctl lock-session"
", Print, exec, ${lib.getExe pkgs.grimblast} save area - | ${lib.getExe pkgs.satty} -f -"

View file

@ -1,23 +0,0 @@
{
inputs,
pkgs,
lib,
config,
...
}: {
environment.systemPackages = [
inputs.walker.packages.${pkgs.system}.walker
];
fireproof.home-manager = {
imports = [inputs.walker.homeManagerModules.default];
programs.walker = {
enable = true;
runAsService = true;
theme = import ./theme.nix;
config = {
app_launch_prefix = "${lib.getExe config.programs.uwsm.package} app -- ";
};
};
};
}

View file

@ -1,433 +0,0 @@
{
style = ''
@define-color fg #DAD8CE;
@define-color fg-alt #B7B5AC;
@define-color bg #1C1B1A;
@define-color bg-alt #282726;
@define-color accent #CF6A4C;
@define-color muted #878580;
@define-color error #D14D41;
#window,
#box,
#aiScroll,
#aiList,
#search,
#password,
#input,
#prompt,
#clear,
#typeahead,
#list,
child,
scrollbar,
slider,
#item,
#text,
#label,
#bar,
#sub,
#activationlabel {
all: unset;
font-family: Hack;
}
#cfgerr {
background: rgba(255, 0, 0, 0.4);
margin-top: 20px;
padding: 8px;
font-size: 14px;
font-family: "Hack Nerd Font";
}
#window {
color: @fg;
}
#box {
border-radius: 8px;
background: @bg;
padding: 8px;
border: 2px solid @accent;
}
#search {
background: @bg-alt;
padding: 8px;
}
#prompt {
margin-left: 4px;
margin-right: 12px;
color: @fg;
opacity: 0.2;
}
#clear {
color: @fg;
@define-color fg #DAD8CE;
@define-color fg-alt #B7B5AC;
@define-color bg #1C1B1A;
@define-color bg-alt #282726;
@define-color accent #CF6A4C;
@define-color muted #878580;
@define-color error #D14D41;
#window,
#box,
#aiScroll,
#aiList,
#search,
#password,
#input,
#prompt,
#clear,
#typeahead,
#list,
child,
scrollbar,
slider,
#item,
#text,
#label,
#bar,
#sub,
#activationlabel {
all: unset;
font-family: Hack;
}
#cfgerr {
background: rgba(255, 0, 0, 0.4);
margin-top: 20px;
padding: 8px;
font-size: 14px;
font-family: "Hack Nerd Font";
}
#window {
color: @fg;
}
#box {
border-radius: 8px;
background: @bg;
padding: 8px;
border: 2px solid @accent;
}
#search {
background: @bg-alt;
padding: 8px;
}
#prompt {
margin-left: 4px;
margin-right: 12px;
color: @fg;
opacity: 0.2;
}
#clear {
color: @fg;
opacity: 0.8;
}
#password,
#input,
#typeahead {
border-radius: 2px;
}
#input {
background: none;
}
#password {
}
#spinner {
padding: 8px;
}
#typeahead {
color: @fg;
opacity: 0.8;
}
#input placeholder {
opacity: 0.5;
}
#list {
}
child {
padding: 8px;
border-radius: 2px;
}
child:selected,
child:hover {
background: alpha(@accent, 0.4);
}
#item {
}
#icon {
margin-right: 8px;
}
#text {
}
#label {
font-weight: 500;
}
#sub {
opacity: 0.5;
font-size: 0.8em;
}
#activationlabel {
}
#bar {
}
.barentry {
}
.activation #activationlabel {
}
.activation #text,
.activation #icon,
.activation #search {
opacity: 0.5;
}
.aiItem {
padding: 10px;
border-radius: 2px;
color: @fg;
background: @bg;
}
.aiItem.user {
padding-left: 0;
padding-right: 0;
}
.aiItem.assistant {
background: @bg-alt;
}
opacity: 0.8;
}
#password,
#input,
#typeahead {
border-radius: 2px;
}
#input {
background: none;
}
#password {
}
#spinner {
padding: 8px;
}
#typeahead {
color: @fg;
opacity: 0.8;
}
#input placeholder {
opacity: 0.5;
}
#list {
}
child {
padding: 8px;
border-radius: 2px;
}
child:selected,
child:hover {
background: alpha(@accent, 0.4);
}
#item {
}
#icon {
margin-right: 8px;
}
#text {
}
#label {
font-weight: 500;
}
#sub {
opacity: 0.5;
font-size: 0.8em;
}
#activationlabel {
}
#bar {
}
.barentry {
}
.activation #activationlabel {
}
.activation #text,
.activation #icon,
.activation #search {
opacity: 0.5;
}
.aiItem {
padding: 10px;
border-radius: 2px;
color: @fg;
background: @bg;
}
.aiItem.user {
padding-left: 0;
padding-right: 0;
}
.aiItem.assistant {
background: @bg-alt;
}
'';
layout = {
ui = {
anchors = {
bottom = true;
left = true;
right = true;
top = true;
};
window = {
h_align = "fill";
v_align = "fill";
box = {
h_align = "center";
v_align = "center";
width = 800;
height = 600;
bar = {
orientation = "horizontal";
position = "end";
entry = {
h_align = "fill";
h_expand = true;
icon = {
h_align = "center";
h_expand = true;
pixel_size = 24;
theme = "";
};
};
};
ai_scroll = {
name = "aiScroll";
h_align = "fill";
v_align = "fill";
margins = {
top = 8;
};
list = {
name = "aiList";
orientation = "vertical";
width = 400;
spacing = 10;
item = {
name = "aiItem";
h_align = "fill";
v_align = "fill";
x_align = 0;
y_align = 0;
wrap = true;
};
};
};
scroll = {
v_expand = true;
v_align = "fill";
list = {
v_expand = true;
h_expand = true;
h_align = "fill";
v_align = "fill";
item = {
activation_label = {
h_align = "fill";
v_align = "fill";
width = 20;
x_align = 0;
y_align = 0;
};
icon = {
pixel_size = 26;
theme = "";
};
};
margins = {
top = 8;
};
};
};
search = {
h_expand = false;
v_expand = false;
prompt = {
name = "prompt";
icon = "edit-find";
theme = "";
pixel_size = 18;
h_align = "center";
v_align = "center";
};
clear = {
name = "clear";
icon = "edit-clear";
theme = "";
pixel_size = 18;
h_align = "center";
v_align = "center";
};
input = {
h_align = "fill";
h_expand = true;
icons = true;
};
spinner = {
hide = true;
};
};
};
};
};
};
}

View file

@ -6,7 +6,6 @@
./desktop/fireproof-shell.nix
./desktop/greetd.nix
./desktop/hyprland/default.nix
./desktop/walker/default.nix
./desktop/gtk/default.nix
./apps/spotify.nix
./apps/firefox.nix