Compare commits

...

4 commits

5 changed files with 83 additions and 153 deletions

62
flake.lock generated
View file

@ -40,28 +40,6 @@
"type": "github"
}
},
"awww": {
"inputs": {
"flake-compat": "flake-compat_2",
"nixpkgs": [
"nixpkgs"
],
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1770895252,
"narHash": "sha256-TUGZVDcC5xsrWVnpBNosAG1cTy+aWchCWXPyeLZdnGM=",
"ref": "refs/heads/main",
"rev": "2c86d41d07471f518e24f5cd1f586e4d2a32d12c",
"revCount": 1331,
"type": "git",
"url": "https://codeberg.org/LGFae/awww.git"
},
"original": {
"type": "git",
"url": "https://codeberg.org/LGFae/awww.git"
}
},
"base16": {
"inputs": {
"fromYaml": "fromYaml"
@ -160,22 +138,6 @@
}
},
"flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1761588595,
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_3": {
"flake": false,
"locked": {
"lastModified": 1767039857,
@ -358,7 +320,7 @@
"inputs": {
"cachyos-kernel": "cachyos-kernel",
"cachyos-kernel-patches": "cachyos-kernel-patches",
"flake-compat": "flake-compat_3",
"flake-compat": "flake-compat_2",
"flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_2"
},
@ -578,7 +540,6 @@
"inputs": {
"aerothemeplasma-nix": "aerothemeplasma-nix",
"apple-silicon": "apple-silicon",
"awww": "awww",
"base16": "base16",
"base16-discord": "base16-discord",
"catppuccin-discord": "catppuccin-discord",
@ -600,27 +561,6 @@
"tt-schemes": "tt-schemes"
}
},
"rust-overlay": {
"inputs": {
"nixpkgs": [
"awww",
"nixpkgs"
]
},
"locked": {
"lastModified": 1764038373,
"narHash": "sha256-M6w2wNBRelcavoDAyFL2iO4NeWknD40ASkH1S3C0YGM=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "ab3536fe850211a96673c6ffb2cb88aab8071cc9",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"spicetify-nix": {
"inputs": {
"nixpkgs": [

View file

@ -86,11 +86,6 @@
# inputs.nixpkgs.follows = "nixpkgs";
};
awww = {
url = "git+https://codeberg.org/LGFae/awww.git";
inputs.nixpkgs.follows = "nixpkgs";
};
openmw = {
url = "gitlab:OpenMW/openmw/01bcd6a6369fe461caaf900354967b4751aede7a";
flake = false;
@ -119,7 +114,6 @@
nur,
nixvim,
apple-silicon,
awww,
openmw,
catppuccin-discord,
...
@ -163,7 +157,6 @@
niri.overlays.niri
noctalia.overlays.default
nur.overlays.default
awww.overlays.default
(final: prev: {
openmw-git = openmw;
catppuccin-discord-git = catppuccin-discord;

View file

@ -1,6 +1,5 @@
{
config,
pkgs,
...
}:
{
@ -181,7 +180,7 @@
title = "Minecraft";
}
];
open-maximized = true;
open-maximized-to-edges = true;
open-focused = true;
}
{
@ -214,7 +213,7 @@
];
layer-rules = [
{
matches = [ { namespace = "noctalia-bar-content-.*"; } ];
matches = [ { namespace = "noctalia-bar-content-.*$"; } ];
background-effect = {
xray = false;
blur = true;
@ -223,22 +222,21 @@
};
}
{
matches = [ { namespace = "noctalia-bar-exclusion-top-.*"; } ];
matches = [ { namespace = "noctalia-bar-exclusion-top-.*$"; } ];
place-within-backdrop = true;
}
{
matches = [ { namespace = "^launcher$"; } ];
opacity = 0.925;
background-effect = {
xray = false;
blur = true;
noise = 0.05;
saturation = 1;
};
}
{
matches = [
{
namespace = "^wpaperd.*";
}
{
namespace = "^awww-daemon";
}
];
matches = [ { namespace = "^wallpaper$"; } ];
place-within-backdrop = true;
}
];
@ -401,29 +399,13 @@
allow-when-locked = true;
};
"XF86Sleep" = {
action.power-off-monitors = { };
};
"XF86Sleep".action.power-off-monitors = { };
"XF86Search" = {
action.spawn = [
"noctalia-shell"
"ipc"
"call"
"launcher"
"toggle"
];
allow-when-locked = true;
};
"XF86Search".action.spawn = [ "fuzzel" ];
"XF86LaunchA" = {
action.spawn = [
"niri"
"msg"
"action"
"toggle-overview"
];
allow-when-locked = true;
action.toggle-overview = { };
repeat = false;
};
"Mod+O" = {
@ -551,18 +533,14 @@
"Mod+Ctrl+Shift+F".action.fullscreen-window = { };
"Mod+C".action.center-column = { };
"Mod+Ctrl+C".action.center-visible-columns = { };
"Mod+Minus".action.set-column-width = "-10%";
"Mod+Equal".action.set-column-width = "+10%";
"Mod+Shift+Minus".action.set-window-height = "-10%";
"Mod+Shift+Equal".action.set-window-height = "+10%";
"Mod+Ctrl+Minus".action.set-column-width = "-0.25%";
"Mod+Ctrl+Equal".action.set-column-width = "+0.25%";
"Mod+Ctrl+Shift+Minus".action.set-window-height = "-0.25%";
"Mod+Ctrl+Shift+Equal".action.set-window-height = "+0.25%";
@ -571,18 +549,10 @@
"Mod+W".action.toggle-column-tabbed-display = { };
"Print".action.screenshot = {
show-pointer = false;
};
"Mod+Shift+S".action.screenshot = {
show-pointer = false;
};
"Ctrl+Print".action.screenshot-screen = {
show-pointer = false;
};
"Alt+Print".action.screenshot-window = {
show-pointer = false;
};
"Print".action.screenshot.show-pointer = false;
"Mod+Shift+S".action.screenshot.show-pointer = false;
"Ctrl+Print".action.screenshot-screen.show-pointer = false;
"Alt+Print".action.screenshot-window.show-pointer = false;
"Mod+Escape" = {
action.toggle-keyboard-shortcuts-inhibit = { };

View file

@ -613,8 +613,6 @@
];
};
Install = {
WantedBy = [ "niri.service" ];
};
Install.WantedBy = [ "niri.service" ];
};
}

View file

@ -1,25 +1,16 @@
{
pkgs,
config,
...
}:
{
systemd.user.services.awww-daemon = {
Unit.Description = "Wallpaper service using awww (daemon)";
Service.ExecStart = "${pkgs.awww}/bin/awww-daemon";
Install.WantedBy = [ "graphical-session.target" ];
};
systemd.user.services.awww-setter = {
Unit.Description = "Wallpaper service using awww (setter)";
Unit.Requires = [ "awww-daemon.service" ];
Unit.After = [ "awww-daemon.service" ];
Service.Type = "oneshot";
systemd.user.services.wbg-daemon = {
Unit.Description = "Wallpaper service using wbg (daemon)";
Service.ExecStart = ''
${pkgs.awww}/bin/awww img \
%h/.local/share/wallpaper/daily.jpg \
--transition-step 2 \
--transition-fps 60
${pkgs.wbg}/bin/wbg -s \
%h/.local/share/wallpaper/daily-colored.jpg
'';
Install.WantedBy = [ "niri.service" ];
};
systemd.user.services.bing-wallpaper = {
@ -39,34 +30,24 @@
libnotify
];
text = ''
set -euo pipefail
OUT="$HOME/.local/share/wallpaper/daily.jpg"
API=$(wget -qO- "https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&mkt=en-US&n=1")
BASE=$(echo "$API" | jq -r '.images[0].urlbase')
TITLE=$(echo "$API" | jq -r '.images[0].title')
OUT_DIR="''${XDG_DATA_HOME:-$HOME/.local/share}/wallpaper"
OUT_FILE="$OUT_DIR/daily.jpg"
API_URL="https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&mkt=en-US&n=1"
API_RESP=$(wget -qO- "$API_URL")
URL_BASE=$(echo "$API_RESP" | jq -r '.images[0].urlbase')
URL_FALLBACK=$(echo "$API_RESP" | jq -r '.images[0].url')
TITLE=$(echo "$API_RESP" | jq -r '.images[0].title')
mkdir -p "$OUT_DIR"
if ! wget -qO "$OUT_FILE" "https://www.bing.com''${URL_BASE}_UHD.jpg"; then
wget -qO "$OUT_FILE" "https://www.bing.com$URL_FALLBACK"
fi
mkdir -p "$HOME/.local/share/wallpaper"
wget -qO "$OUT" "https://www.bing.com''${BASE}_UHD.jpg"
notify-send \
-a "wallpaper of the day" \
-a "Wallpaper of the day" \
-u low \
-i preferences-desktop-wallpaper \
"$TITLE"
'';
}
);
Service.ExecStartPost = "${pkgs.systemd}/bin/systemctl --user restart awww-setter.service";
Install.WantedBy = [ "graphical-session.target" ];
Service.ExecStartPost = "${pkgs.systemd}/bin/systemctl --user start gowall-convert.service";
Install.WantedBy = [ "niri.service" ];
};
systemd.user.timers.bing-wallpaper = {
@ -75,4 +56,52 @@
Timer.Persistent = true;
Install.WantedBy = [ "timers.target" ];
};
systemd.user.services.gowall-convert = {
Unit.Description = "Convert a wallpaper to the system color scheme";
Unit.StartLimitBurst = 6;
Unit.StartLimitIntervalSec = "10m";
Service.Restart = "on-failure";
Service.RestartSec = "10s";
Service.Type = "oneshot";
Service.ExecStart = ''
${pkgs.gowall}/bin/gowall convert \
%h/.local/share/wallpaper/daily.jpg \
--output %h/.local/share/wallpaper/daily-colored.jpg \
-t nix
'';
Service.ExecStartPost = "${pkgs.systemd}/bin/systemctl --user restart wbg-daemon.service";
};
home.file.".config/gowall/config.yml".text = with config.scheme.withHashtag; ''
themes:
- name: "nix"
colors:
- "${base06}"
- "${base0F}"
- "${base17}"
- "${base0E}"
- "${base08}"
- "${base12}"
- "${base09}"
- "${base0A}"
- "${base0B}"
- "${base0C}"
- "${base15}"
- "${base16}"
- "${base0D}"
- "${base07}"
- "${base05}"
- "${base07}"
- "${base0D}"
- "${base0D}"
- "${base04}"
- "${base04}"
- "${base04}"
- "${base03}"
- "${base02}"
- "${base00}"
- "${base01}"
- "${base11}"
'';
}