1
1
Fork 0

Compare commits

...

5 commits

Author SHA1 Message Date
c64d791e5e
nix: update flake.lock
Signed-off-by: Myned <dev@bjork.tech>
2024-09-14 16:07:03 -05:00
aff5570e46
pkgs: add newsflash
Signed-off-by: Myned <dev@bjork.tech>
2024-09-14 16:06:39 -05:00
b3111c1ecd
menu: switch to menu.sh wrapper
Signed-off-by: Myned <dev@bjork.tech>
2024-09-14 16:06:18 -05:00
0668af07f4
walker: initial program
Signed-off-by: Myned <dev@bjork.tech>
2024-09-14 16:05:47 -05:00
855afe285f
office: switch to onlyoffice
Signed-off-by: Myned <dev@bjork.tech>
2024-09-14 16:03:48 -05:00
12 changed files with 242 additions and 13 deletions

View file

@ -110,6 +110,7 @@
"https://ezkea.cachix.org" "https://ezkea.cachix.org"
"https://hyprland.cachix.org" "https://hyprland.cachix.org"
"https://nix-community.cachix.org" "https://nix-community.cachix.org"
"https://walker.cachix.org"
]; ];
trusted-public-keys = [ trusted-public-keys = [
@ -118,6 +119,7 @@
"ezkea.cachix.org-1:ioBmUbJTZIKsHmWWXPe1FSFbeVe+afhfgqgTSNd34eI=" "ezkea.cachix.org-1:ioBmUbJTZIKsHmWWXPe1FSFbeVe+afhfgqgTSNd34eI="
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"walker.cachix.org-1:fG8q+uAaMqhsMxWjwvk0IMb4mFPFLqHjuvfwQxE4oJM="
]; ];
}; };

View file

@ -74,9 +74,8 @@
nix-flatpak = flake "github:gmodena/nix-flatpak?ref=v0.4.1"; nix-flatpak = flake "github:gmodena/nix-flatpak?ref=v0.4.1";
nix-vscode-extensions = flake "github:nix-community/nix-vscode-extensions" // unstable "nixpkgs"; nix-vscode-extensions = flake "github:nix-community/nix-vscode-extensions" // unstable "nixpkgs";
nixd = flake "github:nix-community/nixd" // unstable "nixpkgs"; nixd = flake "github:nix-community/nixd" // unstable "nixpkgs";
xdg-desktop-portal-hyprland = walker = flake "github:abenz1267/walker" // unstable "nixpkgs";
flake "github:hyprwm/xdg-desktop-portal-hyprland" xdg-desktop-portal-hyprland = flake "github:hyprwm/xdg-desktop-portal-hyprland" // unstable "nixpkgs";
// unstable "nixpkgs";
# Server flakes # Server flakes
conduwuit = flake "github:Myned/conduwuit" // unstable "nixpkgs"; conduwuit = flake "github:Myned/conduwuit" // unstable "nixpkgs";

43
flake.lock generated
View file

@ -739,6 +739,27 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_5": {
"inputs": {
"nixpkgs-lib": [
"walker",
"nixpkgs"
]
},
"locked": {
"lastModified": 1719994518,
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-root": { "flake-root": {
"locked": { "locked": {
"lastModified": 1713493429, "lastModified": 1713493429,
@ -2241,6 +2262,7 @@
"steamtinkerlaunch": "steamtinkerlaunch", "steamtinkerlaunch": "steamtinkerlaunch",
"thunderbird-gnome-theme": "thunderbird-gnome-theme", "thunderbird-gnome-theme": "thunderbird-gnome-theme",
"virtio-win": "virtio-win", "virtio-win": "virtio-win",
"walker": "walker",
"xdg-desktop-portal-hyprland": "xdg-desktop-portal-hyprland" "xdg-desktop-portal-hyprland": "xdg-desktop-portal-hyprland"
} }
}, },
@ -2551,6 +2573,27 @@
"url": "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.262-2/virtio-win.iso" "url": "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.262-2/virtio-win.iso"
} }
}, },
"walker": {
"inputs": {
"flake-parts": "flake-parts_5",
"nixpkgs": [
"nixpkgs-unstable"
]
},
"locked": {
"lastModified": 1725430478,
"narHash": "sha256-W30JZlSiFIUALwFtjIDG5E6LtuUTjHvAVrNlKpuSEt0=",
"owner": "abenz1267",
"repo": "walker",
"rev": "e4a58cd93691d3d9ace67a691bd74d54032c89b0",
"type": "github"
},
"original": {
"owner": "abenz1267",
"repo": "walker",
"type": "github"
}
},
"xdg-desktop-portal-hyprland": { "xdg-desktop-portal-hyprland": {
"inputs": { "inputs": {
"hyprland-protocols": "hyprland-protocols_2", "hyprland-protocols": "hyprland-protocols_2",

View file

@ -129,6 +129,10 @@
flake = false; flake = false;
url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.262-2/virtio-win.iso"; url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.262-2/virtio-win.iso";
}; };
walker = {
inputs.nixpkgs.follows = "nixpkgs-unstable";
url = "github:abenz1267/walker";
};
xdg-desktop-portal-hyprland = { xdg-desktop-portal-hyprland = {
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
url = "github:hyprwm/xdg-desktop-portal-hyprland"; url = "github:hyprwm/xdg-desktop-portal-hyprland";

View file

@ -17,10 +17,12 @@ with lib; let
kill = "${pkgs.procps}/bin/kill"; kill = "${pkgs.procps}/bin/kill";
kitty = "${config.home-manager.users.${config.custom.username}.programs.kitty.package}/bin/kitty"; kitty = "${config.home-manager.users.${config.custom.username}.programs.kitty.package}/bin/kitty";
loginctl = "${pkgs.systemd}/bin/loginctl"; loginctl = "${pkgs.systemd}/bin/loginctl";
menu = "~/.local/bin/menu";
nautilus = "${pkgs.nautilus}/bin/nautilus"; nautilus = "${pkgs.nautilus}/bin/nautilus";
networkmanager_dmenu = "${pkgs.networkmanager_dmenu}/bin/networkmanager_dmenu"; networkmanager_dmenu = "${pkgs.networkmanager_dmenu}/bin/networkmanager_dmenu";
notify-send = "${pkgs.libnotify}/bin/notify-send"; notify-send = "${pkgs.libnotify}/bin/notify-send";
obsidian = "${pkgs.obsidian}/bin/obsidian"; obsidian = "${pkgs.obsidian}/bin/obsidian";
onlyoffice = "${pkgs.onlyoffice-bin}/bin/onlyoffice-desktopeditors";
pkill = "${pkgs.procps}/bin/pkill"; pkill = "${pkgs.procps}/bin/pkill";
playerctl = "${pkgs.playerctl}/bin/playerctl"; playerctl = "${pkgs.playerctl}/bin/playerctl";
rofi-rbw = "${pkgs.rofi-rbw}/bin/rofi-rbw"; rofi-rbw = "${pkgs.rofi-rbw}/bin/rofi-rbw";
@ -29,8 +31,8 @@ with lib; let
swayosd-client = "${pkgs.swayosd}/bin/swayosd-client"; swayosd-client = "${pkgs.swayosd}/bin/swayosd-client";
systemctl = "${pkgs.systemd}/bin/systemctl"; systemctl = "${pkgs.systemd}/bin/systemctl";
virt-manager = "${config.programs.virt-manager.package}/bin/virt-manager"; virt-manager = "${config.programs.virt-manager.package}/bin/virt-manager";
walker = "${config.home-manager.users.${config.custom.username}.programs.walker.package}/bin/walker";
waydroid = "${pkgs.waydroid}/bin/waydroid"; waydroid = "${pkgs.waydroid}/bin/waydroid";
wofi = "${config.home-manager.users.${config.custom.username}.programs.wofi.package}/bin/wofi";
cfg = config.custom.desktops.hyprland.binds; cfg = config.custom.desktops.hyprland.binds;
in { in {
@ -97,11 +99,11 @@ in {
(key "Control_L" "Super+Ctrl+Alt+Shift" "layoutmsg" "removemaster") (key "Control_L" "Super+Ctrl+Alt+Shift" "layoutmsg" "removemaster")
(key "Control_L" "Super+Ctrl+Shift" "layoutmsg" "addmaster") (key "Control_L" "Super+Ctrl+Shift" "layoutmsg" "addmaster")
(key "Shift_L" "Super+Shift" "workspace" "previous") (key "Shift_L" "Super+Shift" "workspace" "previous")
(key "Super_L" "Super" "exec" "${pkill} wofi || ${wofi} --show drun") (key "Super_L" "Super" "exec" "${menu}")
(key "Super_L" "Super+Alt" "exec" "${pkill} wofi || ${rofi-rbw}") (key "Super_L" "Super+Alt" "exec" "${menu} --passwords")
(key "Super_L" "Super+Ctrl" "exec" "${pkill} wofi || calc") (key "Super_L" "Super+Ctrl" "exec" "${menu} --calculator")
(key "Super_L" "Super+Ctrl+Shift" "exec" "${pkill} wofi || ${networkmanager_dmenu}") (key "Super_L" "Super+Ctrl+Shift" "exec" "${menu} --networks")
(key "Super_L" "Super+Shift" "exec" "${pkill} wofi || ${wofi} --show run") (key "Super_L" "Super+Shift" "exec" "${menu} --runner")
]; ];
# Regular binds # Regular binds
@ -211,7 +213,7 @@ in {
(key "M" "Super" "togglespecialworkspace" "music") (key "M" "Super" "togglespecialworkspace" "music")
(key "M" "Super+Shift" "movetoworkspacesilent" "music") (key "M" "Super+Shift" "movetoworkspacesilent" "music")
(key "O" "Super" "togglespecialworkspace" "office") (key "O" "Super" "togglespecialworkspace" "office")
(key "O" "Super+Ctrl" "exec" "libreoffice") (key "O" "Super+Ctrl" "exec" "${onlyoffice}")
(key "O" "Super+Shift" "movetoworkspacesilent" "special:office") (key "O" "Super+Shift" "movetoworkspacesilent" "special:office")
(key "P" "Super" "exec" "${hyprpicker} --autocopy") (key "P" "Super" "exec" "${hyprpicker} --autocopy")
(key "P" "Super+Shift" "exec" "${hyprpicker} --autocopy --format rgb") (key "P" "Super+Shift" "exec" "${hyprpicker} --autocopy --format rgb")

View file

@ -7,8 +7,8 @@
with lib; let with lib; let
gamescope = "${config.programs.gamescope.package}/bin/gamescope"; gamescope = "${config.programs.gamescope.package}/bin/gamescope";
kitty = "${config.home-manager.users.${config.custom.username}.programs.kitty.package}/bin/kitty"; kitty = "${config.home-manager.users.${config.custom.username}.programs.kitty.package}/bin/kitty";
libreoffice = "${config.custom.programs.libreoffice.package}/bin/libreoffice";
loupe = "${pkgs.loupe}/bin/loupe"; loupe = "${pkgs.loupe}/bin/loupe";
onlyoffice = "${pkgs.onlyoffice-bin}/bin/onlyoffice-desktopeditors";
pgrep = "${pkgs.procps}/bin/pgrep"; pgrep = "${pkgs.procps}/bin/pgrep";
steam = "${config.programs.steam.package}/bin/steam"; steam = "${config.programs.steam.package}/bin/steam";
virt-manager = "${pkgs.virt-manager}/bin/virt-manager"; virt-manager = "${pkgs.virt-manager}/bin/virt-manager";
@ -28,7 +28,7 @@ in {
"special:android, on-created-empty:${waydroid} app launch com.YoStarEN.Arknights" "special:android, on-created-empty:${waydroid} app launch com.YoStarEN.Arknights"
"special:music, on-created-empty:${youtube-music}" "special:music, on-created-empty:${youtube-music}"
"special:office, on-created-empty:${libreoffice}" "special:office, on-created-empty:${onlyoffice}"
"special:steam, on-created-empty:${steam}" "special:steam, on-created-empty:${steam}"
"special:terminal, on-created-empty:${kitty}" "special:terminal, on-created-empty:${kitty}"
"special:vm, on-created-empty:${pgrep} -x vm || ${virt-manager}" "special:vm, on-created-empty:${pgrep} -x vm || ${virt-manager}"
@ -136,6 +136,7 @@ in {
]; ];
office = rules: [ office = rules: [
(class "libreoffice.+" rules) (class "libreoffice.+" rules)
(class "ONLYOFFICE Desktop Editors" rules)
]; ];
pip = rules: [ pip = rules: [
(title "Picture.in.[Pp]icture" rules) (title "Picture.in.[Pp]icture" rules)

View file

@ -50,7 +50,7 @@ with lib; {
#// gnome-shell.enable = true; #// gnome-shell.enable = true;
gpg.enable = true; gpg.enable = true;
hyprlock.enable = true; hyprlock.enable = true;
libreoffice.enable = true; #// libreoffice.enable = true;
#// librewolf.enable = true; #// librewolf.enable = true;
localsend.enable = true; localsend.enable = true;
logseq.enable = true; logseq.enable = true;
@ -71,6 +71,7 @@ with lib; {
#// thunderbird.enable = true; #// thunderbird.enable = true;
tio.enable = true; tio.enable = true;
vscode.enable = true; vscode.enable = true;
walker.enable = true;
waybar.enable = true; waybar.enable = true;
wireshark.enable = true; wireshark.enable = true;
wofi.enable = true; wofi.enable = true;

View file

@ -0,0 +1,66 @@
{
config,
lib,
inputs,
pkgs,
...
}:
with lib; let
cfg = config.custom.programs.walker;
in {
options.custom.programs.walker.enable = mkOption {default = false;};
config.home-manager.users.${config.custom.username} = mkIf cfg.enable {
imports = [inputs.walker.homeManagerModules.default];
# https://github.com/abenz1267/walker
# https://github.com/abenz1267/walker?tab=readme-ov-file#building-from-source
# https://github.com/abenz1267/walker/blob/master/nix/hm-module.nix
programs.walker = {
enable = true;
package = pkgs.walker;
#!! Service must be restarted for changes to take effect
#?? systemctl --user restart walker.service
runAsService = true;
# https://github.com/abenz1267/walker/blob/master/internal/config/config.default.json
config = {
activation_mode.labels = ""; # Chord indicators
search.placeholder = "";
builtins = {
applications = {
actions = false; # Desktop file actions
prioritize_new = false;
show_sub_when_single = false; # Subtext with one module
};
};
};
# https://github.com/abenz1267/walker/wiki/Theming
theme = {
style = builtins.readFile ./style.css;
# https://github.com/abenz1267/walker/blob/master/internal/config/themes/bare.json
layout.ui.window.box = rec {
height = 500 / config.custom.scale;
width = 1000 / config.custom.scale;
scroll.list = {
min_height = height;
max_height = height;
max_width = width;
min_width = width;
# Icon resolution
item.icon = {
icon_size = "largest"; # 128px
pixel_size = 32;
};
};
};
};
};
};
}

View file

@ -0,0 +1,53 @@
/***
/* !! Inherits system GTK theme
https://github.com/abenz1267/walker/blob/master/internal/config/themes/bare.css
https://docs.gtk.org/gtk4/css-properties.html
***/
/* Transparent background overlay */
#window {
background: none;
}
/* Visible window overlay */
#box {
background: #002b36;
border: 2px #073642 solid;
border-radius: 25px;
font: larger sans-serif;
padding: 4px;
}
/* Input box */
#search entry {
border-radius: 25px;
padding: 4px;
}
/* Input box icons */
#search entry image {
opacity: 0;
}
/* List */
#list {
background: none;
}
/* List entry */
#list child {
border-radius: 25px;
margin: 4px 0;
padding: 8px;
}
/* List entry icon */
#list child #icon {
margin-right: 8px;
}
/* List entry subtext */
#list child #sub {
font-size: x-small;
opacity: 0.5;
}

View file

@ -9,6 +9,7 @@ with lib; let
git = config.home-manager.users.${config.custom.username}.programs.git.package; git = config.home-manager.users.${config.custom.username}.programs.git.package;
hyprland = hyprland =
config.home-manager.users.${config.custom.username}.wayland.windowManager.hyprland.finalPackage; config.home-manager.users.${config.custom.username}.wayland.windowManager.hyprland.finalPackage;
walker = config.home-manager.users.${config.custom.username}.programs.walker.package;
wofi = config.home-manager.users.${config.custom.username}.programs.wofi.package; wofi = config.home-manager.users.${config.custom.username}.programs.wofi.package;
in { in {
config.home-manager.users.${config.custom.username}.home.file = let config.home-manager.users.${config.custom.username}.home.file = let
@ -96,6 +97,11 @@ in {
jq jq
libnotify libnotify
]) ])
(bash "menu" [
networkmanager_dmenu
rofi-rbw
walker
])
(bash "minimize" [ (bash "minimize" [
hyprland hyprland
jq jq

View file

@ -0,0 +1,49 @@
#! /usr/bin/env bash
# Menu wrapper
#?? menu
command=walker
while (("$#" > 0)); do
case "$1" in
-a | --applications)
command="walker --modules applications"
;;
-c | --calculator)
command="walker --modules calc"
;;
-f | --files)
command="walker --modules finder"
;;
-i | --input)
command="walker --dmenu"
;;
-n | --networks)
command="networkmanager_dmenu"
;;
-p | --passwords)
command="rofi-rbw"
;;
-r | --runner)
command="walker --modules runner"
;;
-s | --ssh)
command="walker --modules ssh"
;;
-u | --unicode)
command="walker --modules emojis"
;;
-w | --web)
command="walker --modules websearch"
;;
--)
shift
command+=" $*"
break
;;
esac
shift
done
$command

View file

@ -25,6 +25,7 @@ in {
fd fd
fzf fzf
jq jq
libqalculate # qalc
lm_sensors # sensors lm_sensors # sensors
nix-output-monitor # nom nix-output-monitor # nom
nix-tree nix-tree
@ -96,8 +97,10 @@ in {
logseq logseq
loupe loupe
lutris lutris
newsflash
nheko nheko
obsidian obsidian
onlyoffice-bin
path-of-building path-of-building
pika-backup pika-backup
protonup-qt protonup-qt