Compare commits
4 commits
6249eba566
...
9bd6e7793e
| Author | SHA1 | Date | |
|---|---|---|---|
|
9bd6e7793e |
|||
|
862b60c351 |
|||
|
cc05f03bd8 |
|||
|
0ae6192f1d |
5 changed files with 83 additions and 153 deletions
62
flake.lock
generated
62
flake.lock
generated
|
|
@ -40,28 +40,6 @@
|
||||||
"type": "github"
|
"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": {
|
"base16": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"fromYaml": "fromYaml"
|
"fromYaml": "fromYaml"
|
||||||
|
|
@ -160,22 +138,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_2": {
|
"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,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767039857,
|
"lastModified": 1767039857,
|
||||||
|
|
@ -358,7 +320,7 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"cachyos-kernel": "cachyos-kernel",
|
"cachyos-kernel": "cachyos-kernel",
|
||||||
"cachyos-kernel-patches": "cachyos-kernel-patches",
|
"cachyos-kernel-patches": "cachyos-kernel-patches",
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_2",
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_2",
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
|
|
@ -578,7 +540,6 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"aerothemeplasma-nix": "aerothemeplasma-nix",
|
"aerothemeplasma-nix": "aerothemeplasma-nix",
|
||||||
"apple-silicon": "apple-silicon",
|
"apple-silicon": "apple-silicon",
|
||||||
"awww": "awww",
|
|
||||||
"base16": "base16",
|
"base16": "base16",
|
||||||
"base16-discord": "base16-discord",
|
"base16-discord": "base16-discord",
|
||||||
"catppuccin-discord": "catppuccin-discord",
|
"catppuccin-discord": "catppuccin-discord",
|
||||||
|
|
@ -600,27 +561,6 @@
|
||||||
"tt-schemes": "tt-schemes"
|
"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": {
|
"spicetify-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
|
||||||
|
|
@ -86,11 +86,6 @@
|
||||||
# inputs.nixpkgs.follows = "nixpkgs";
|
# inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
awww = {
|
|
||||||
url = "git+https://codeberg.org/LGFae/awww.git";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
openmw = {
|
openmw = {
|
||||||
url = "gitlab:OpenMW/openmw/01bcd6a6369fe461caaf900354967b4751aede7a";
|
url = "gitlab:OpenMW/openmw/01bcd6a6369fe461caaf900354967b4751aede7a";
|
||||||
flake = false;
|
flake = false;
|
||||||
|
|
@ -119,7 +114,6 @@
|
||||||
nur,
|
nur,
|
||||||
nixvim,
|
nixvim,
|
||||||
apple-silicon,
|
apple-silicon,
|
||||||
awww,
|
|
||||||
openmw,
|
openmw,
|
||||||
catppuccin-discord,
|
catppuccin-discord,
|
||||||
...
|
...
|
||||||
|
|
@ -163,7 +157,6 @@
|
||||||
niri.overlays.niri
|
niri.overlays.niri
|
||||||
noctalia.overlays.default
|
noctalia.overlays.default
|
||||||
nur.overlays.default
|
nur.overlays.default
|
||||||
awww.overlays.default
|
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
openmw-git = openmw;
|
openmw-git = openmw;
|
||||||
catppuccin-discord-git = catppuccin-discord;
|
catppuccin-discord-git = catppuccin-discord;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
pkgs,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
|
@ -181,7 +180,7 @@
|
||||||
title = "Minecraft";
|
title = "Minecraft";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
open-maximized = true;
|
open-maximized-to-edges = true;
|
||||||
open-focused = true;
|
open-focused = true;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
|
|
@ -214,7 +213,7 @@
|
||||||
];
|
];
|
||||||
layer-rules = [
|
layer-rules = [
|
||||||
{
|
{
|
||||||
matches = [ { namespace = "noctalia-bar-content-.*"; } ];
|
matches = [ { namespace = "noctalia-bar-content-.*$"; } ];
|
||||||
background-effect = {
|
background-effect = {
|
||||||
xray = false;
|
xray = false;
|
||||||
blur = true;
|
blur = true;
|
||||||
|
|
@ -223,22 +222,21 @@
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
matches = [ { namespace = "noctalia-bar-exclusion-top-.*"; } ];
|
matches = [ { namespace = "noctalia-bar-exclusion-top-.*$"; } ];
|
||||||
place-within-backdrop = true;
|
place-within-backdrop = true;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
matches = [ { namespace = "^launcher$"; } ];
|
matches = [ { namespace = "^launcher$"; } ];
|
||||||
opacity = 0.925;
|
opacity = 0.925;
|
||||||
|
background-effect = {
|
||||||
|
xray = false;
|
||||||
|
blur = true;
|
||||||
|
noise = 0.05;
|
||||||
|
saturation = 1;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
matches = [
|
matches = [ { namespace = "^wallpaper$"; } ];
|
||||||
{
|
|
||||||
namespace = "^wpaperd.*";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
namespace = "^awww-daemon";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
place-within-backdrop = true;
|
place-within-backdrop = true;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
@ -401,29 +399,13 @@
|
||||||
allow-when-locked = true;
|
allow-when-locked = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
"XF86Sleep" = {
|
"XF86Sleep".action.power-off-monitors = { };
|
||||||
action.power-off-monitors = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86Search" = {
|
"XF86Search".action.spawn = [ "fuzzel" ];
|
||||||
action.spawn = [
|
|
||||||
"noctalia-shell"
|
|
||||||
"ipc"
|
|
||||||
"call"
|
|
||||||
"launcher"
|
|
||||||
"toggle"
|
|
||||||
];
|
|
||||||
allow-when-locked = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"XF86LaunchA" = {
|
"XF86LaunchA" = {
|
||||||
action.spawn = [
|
action.toggle-overview = { };
|
||||||
"niri"
|
repeat = false;
|
||||||
"msg"
|
|
||||||
"action"
|
|
||||||
"toggle-overview"
|
|
||||||
];
|
|
||||||
allow-when-locked = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
"Mod+O" = {
|
"Mod+O" = {
|
||||||
|
|
@ -551,18 +533,14 @@
|
||||||
"Mod+Ctrl+Shift+F".action.fullscreen-window = { };
|
"Mod+Ctrl+Shift+F".action.fullscreen-window = { };
|
||||||
|
|
||||||
"Mod+C".action.center-column = { };
|
"Mod+C".action.center-column = { };
|
||||||
|
|
||||||
"Mod+Ctrl+C".action.center-visible-columns = { };
|
"Mod+Ctrl+C".action.center-visible-columns = { };
|
||||||
|
|
||||||
"Mod+Minus".action.set-column-width = "-10%";
|
"Mod+Minus".action.set-column-width = "-10%";
|
||||||
"Mod+Equal".action.set-column-width = "+10%";
|
"Mod+Equal".action.set-column-width = "+10%";
|
||||||
|
|
||||||
"Mod+Shift+Minus".action.set-window-height = "-10%";
|
"Mod+Shift+Minus".action.set-window-height = "-10%";
|
||||||
"Mod+Shift+Equal".action.set-window-height = "+10%";
|
"Mod+Shift+Equal".action.set-window-height = "+10%";
|
||||||
|
|
||||||
"Mod+Ctrl+Minus".action.set-column-width = "-0.25%";
|
"Mod+Ctrl+Minus".action.set-column-width = "-0.25%";
|
||||||
"Mod+Ctrl+Equal".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+Minus".action.set-window-height = "-0.25%";
|
||||||
"Mod+Ctrl+Shift+Equal".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 = { };
|
"Mod+W".action.toggle-column-tabbed-display = { };
|
||||||
|
|
||||||
"Print".action.screenshot = {
|
"Print".action.screenshot.show-pointer = false;
|
||||||
show-pointer = false;
|
"Mod+Shift+S".action.screenshot.show-pointer = false;
|
||||||
};
|
"Ctrl+Print".action.screenshot-screen.show-pointer = false;
|
||||||
"Mod+Shift+S".action.screenshot = {
|
"Alt+Print".action.screenshot-window.show-pointer = false;
|
||||||
show-pointer = false;
|
|
||||||
};
|
|
||||||
"Ctrl+Print".action.screenshot-screen = {
|
|
||||||
show-pointer = false;
|
|
||||||
};
|
|
||||||
"Alt+Print".action.screenshot-window = {
|
|
||||||
show-pointer = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
"Mod+Escape" = {
|
"Mod+Escape" = {
|
||||||
action.toggle-keyboard-shortcuts-inhibit = { };
|
action.toggle-keyboard-shortcuts-inhibit = { };
|
||||||
|
|
|
||||||
|
|
@ -613,8 +613,6 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
Install = {
|
Install.WantedBy = [ "niri.service" ];
|
||||||
WantedBy = [ "niri.service" ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,16 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
systemd.user.services.awww-daemon = {
|
systemd.user.services.wbg-daemon = {
|
||||||
Unit.Description = "Wallpaper service using awww (daemon)";
|
Unit.Description = "Wallpaper service using wbg (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";
|
|
||||||
Service.ExecStart = ''
|
Service.ExecStart = ''
|
||||||
${pkgs.awww}/bin/awww img \
|
${pkgs.wbg}/bin/wbg -s \
|
||||||
%h/.local/share/wallpaper/daily.jpg \
|
%h/.local/share/wallpaper/daily-colored.jpg
|
||||||
--transition-step 2 \
|
|
||||||
--transition-fps 60
|
|
||||||
'';
|
'';
|
||||||
|
Install.WantedBy = [ "niri.service" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.user.services.bing-wallpaper = {
|
systemd.user.services.bing-wallpaper = {
|
||||||
|
|
@ -39,34 +30,24 @@
|
||||||
libnotify
|
libnotify
|
||||||
];
|
];
|
||||||
text = ''
|
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"
|
mkdir -p "$HOME/.local/share/wallpaper"
|
||||||
OUT_FILE="$OUT_DIR/daily.jpg"
|
wget -qO "$OUT" "https://www.bing.com''${BASE}_UHD.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
|
|
||||||
|
|
||||||
notify-send \
|
notify-send \
|
||||||
-a "wallpaper of the day" \
|
-a "Wallpaper of the day" \
|
||||||
-u low \
|
-u low \
|
||||||
-i preferences-desktop-wallpaper \
|
-i preferences-desktop-wallpaper \
|
||||||
"$TITLE"
|
"$TITLE"
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
Service.ExecStartPost = "${pkgs.systemd}/bin/systemctl --user restart awww-setter.service";
|
Service.ExecStartPost = "${pkgs.systemd}/bin/systemctl --user start gowall-convert.service";
|
||||||
Install.WantedBy = [ "graphical-session.target" ];
|
Install.WantedBy = [ "niri.service" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.user.timers.bing-wallpaper = {
|
systemd.user.timers.bing-wallpaper = {
|
||||||
|
|
@ -75,4 +56,52 @@
|
||||||
Timer.Persistent = true;
|
Timer.Persistent = true;
|
||||||
Install.WantedBy = [ "timers.target" ];
|
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}"
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue