Implemented custom system for creating and distributing color schemes based on wallpapers, and also cycling through wallpapers.

nixfmt'd the codebase
This commit is contained in:
2026-03-09 22:02:46 -04:00
parent 4308b8eb16
commit 8ee748a997
145 changed files with 2776 additions and 1125 deletions

View File

@@ -1,7 +1,13 @@
{ pkgs }:
pkgs.writeShellApplication {
name = "chpaper";
runtimeInputs = with pkgs; [ chafa fzf ripgrep findutils coreutils ];
runtimeInputs = with pkgs; [
chafa
fzf
ripgrep
findutils
coreutils
];
text = ''
paper="$\{self}/assets/wallpapers/$(find "$FLAKEPATH"/assets/wallpapers -exec basename {} \; | rg "\.\w+$" | fzf --preview "chafa -s 30x40 $FLAKEPATH/assets/wallpapers/{}")"
[ "$paper" = "$\{self}/assets/wallpapers/" ] && echo "Cancelling wallpaper change" && exit 1

View File

@@ -1,7 +1,11 @@
{ pkgs }:
pkgs.writeShellApplication {
name = "chscheme";
runtimeInputs = with pkgs; [ base16-schemes fzf coreutils ];
runtimeInputs = with pkgs; [
base16-schemes
fzf
coreutils
];
text = ''
selected_scheme=$(/usr/bin/env ls "$(nix-build '<nixpkgs>' -A base16-schemes)"/share/themes | \
sed 's/\.yaml//g' | \

View File

@@ -1,12 +1,12 @@
{ super }:
{
chpaper = super.callPackage ./chpaper.nix {};
chscheme = super.callPackage ./chscheme.nix {};
keyring = super.callPackage ./keyring.nix {};
playshellsound = super.callPackage ./playshellsound.nix {};
mkscreenshots = super.callPackage ./mkscreenshots.nix {};
moveonscreen = super.callPackage ./moveonscreen.nix {};
s_check = super.callPackage ./s_check.nix {};
switchmon = super.callPackage ./switchmon.nix {};
chpaper = super.callPackage ./chpaper.nix { };
chscheme = super.callPackage ./chscheme.nix { };
keyring = super.callPackage ./keyring.nix { };
playshellsound = super.callPackage ./playshellsound.nix { };
mkscreenshots = super.callPackage ./mkscreenshots.nix { };
moveonscreen = super.callPackage ./moveonscreen.nix { };
s_check = super.callPackage ./s_check.nix { };
switchmon = super.callPackage ./switchmon.nix { };
}

View File

@@ -2,7 +2,15 @@
pkgs.writeShellApplication {
name = "mkscreenshots";
runtimeInputs = with pkgs; [ jq fastfetch kitty coreutils nemo grimblast git ];
runtimeInputs = with pkgs; [
jq
fastfetch
kitty
coreutils
nemo
grimblast
git
];
text = ''
if [ -n "$(hyprctl clients -j | jq -r '.[] | select(.workspace.name == "4")')" ]; then
echo "There are windows in workspace 4. This script uses workspace 4, so move those windows and run it again."

View File

@@ -1,7 +1,12 @@
{ pkgs }:
pkgs.writeShellApplication {
name = "moveonscreen";
runtimeInputs = with pkgs; [ hyprland jq coreutils gawk ];
runtimeInputs = with pkgs; [
hyprland
jq
coreutils
gawk
];
text = ''
center_window=false
if [[ ! $# -eq 0 ]] && [[ $1 == "--center" ]]; then

View File

@@ -1,4 +1,4 @@
{ pkgs, }:
{ pkgs }:
pkgs.writeShellApplication {
name = "scheck";
text = ''

View File

@@ -1,4 +1,4 @@
{ pkgs, }:
{ pkgs }:
pkgs.writeShellApplication {
name = "switchmon";
text = ''