provide desktop utilities

This commit is contained in:
2026-02-20 16:27:54 +01:00
parent d9d6418d6a
commit 13ee868d5d
3 changed files with 35 additions and 18 deletions

View File

@@ -68,6 +68,28 @@
niphas-set-wallpaper = prev.writers.writeDashBin "niphas-set-wallpaper" '' niphas-set-wallpaper = prev.writers.writeDashBin "niphas-set-wallpaper" ''
exec ${lib.getExe prev.swaybg} --mode fill --image ${toString final.niphas-wallpaper} exec ${lib.getExe prev.swaybg} --mode fill --image ${toString final.niphas-wallpaper}
''; '';
niphas-clipboard-watcher = prev.writers.writeDashBin "niphas-clipboard-watcher" ''
exec ${lib.getExe' prev.wl-clipboard "wl-paste"} -t text --watch ${lib.getExe prev.clipman} store
'';
niphas-clipman = prev.writers.writeDashBin "niphas-clipman" ''
exec ${lib.getExe prev.clipman} pick --tool rofi
'';
niphas-redshift =
let
geolocation = [
52.5244
13.4105
];
latitude = builtins.elemAt geolocation 0;
longitude = builtins.elemAt geolocation 1;
in
prev.writers.writeDashBin "niphas-redshift" ''
exec ${lib.getExe prev.wlsunset} -l ${toString latitude} -L ${toString longitude}
'';
vimv = prev.callPackage packages/vimv.nix { }; vimv = prev.callPackage packages/vimv.nix { };
}; };
@@ -85,6 +107,11 @@
niphas-git niphas-git
niphas-niri niphas-niri
niphas-editor niphas-editor
niphas-wallpaper
niphas-set-wallpaper
niphas-clipboard-watcher
niphas-clipman
niphas-redshift
vimv vimv
; ;
} }

View File

@@ -28,6 +28,7 @@
pkgs.wdisplays pkgs.wdisplays
pkgs.nsxiv pkgs.nsxiv
pkgs.xdg-desktop-portal pkgs.xdg-desktop-portal
pkgs.clipman
pkgs.xdg-desktop-portal-gnome pkgs.xdg-desktop-portal-gnome
pkgs.rofi # to provide rofi-sensible-terminal pkgs.rofi # to provide rofi-sensible-terminal
@@ -37,6 +38,9 @@
pkgs.niphas-terminal pkgs.niphas-terminal
pkgs.niphas-web-browser pkgs.niphas-web-browser
pkgs.niphas-set-wallpaper pkgs.niphas-set-wallpaper
pkgs.niphas-redshift
pkgs.niphas-screenshot
pkgs.niphas-clipboard-watcher
pkgs.niphas-runner pkgs.niphas-runner
pkgs.niphas-locker pkgs.niphas-locker
]; ];

View File

@@ -1,10 +1,6 @@
{ {
wrappers, wrappers,
pkgs, pkgs,
geolocation ? [
52.5244
13.4105
],
}: }:
let let
lib = pkgs.lib; lib = pkgs.lib;
@@ -61,20 +57,9 @@ let
spawn-at-startup = [ spawn-at-startup = [
(lib.getExe pkgs.niphas-bar) (lib.getExe pkgs.niphas-bar)
(lib.getExe pkgs.niphas-set-wallpaper) (lib.getExe pkgs.niphas-set-wallpaper)
] (lib.getExe pkgs.niphas-clipboard-watcher)
++ lib.optional (geolocation != null) ( (lib.getExe pkgs.niphas-redshift)
let ];
latitude = builtins.elemAt geolocation 0;
longitude = builtins.elemAt geolocation 1;
in
[
(lib.getExe pkgs.wlsunset)
"-l"
(toString latitude)
"-L"
(toString longitude)
]
);
hotkey-overlay.skip-at-startup = null; hotkey-overlay.skip-at-startup = null;
prefer-no-csd = null; prefer-no-csd = null;
animations.slowdown = 0.5; # twice as fast animations.slowdown = 0.5; # twice as fast
@@ -90,6 +75,7 @@ let
"Mod+D".spawn = lib.getExe pkgs.niphas-runner; "Mod+D".spawn = lib.getExe pkgs.niphas-runner;
"Mod+Shift+W".spawn = lib.getExe pkgs.niphas-locker; "Mod+Shift+W".spawn = lib.getExe pkgs.niphas-locker;
"Print".spawn = lib.getExe pkgs.niphas-screenshot; "Print".spawn = lib.getExe pkgs.niphas-screenshot;
"Mod+Q".spawn = lib.getExe pkgs.niphas-clipman;
# TODO allow-when-locked # TODO allow-when-locked
"XF86AudioRaiseVolume".spawn-sh = "${wpctl} set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; "XF86AudioRaiseVolume".spawn-sh = "${wpctl} set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0";