clean up niri.nix: gate noctalia/non-noctalia config, move desktop files to home.nix
This commit is contained in:
@@ -253,6 +253,11 @@
|
|||||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/nvim";
|
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/nvim";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
xdg.dataFile."applications/switch-wallpaper.desktop".source = ./config/applications/switch-wallpaper.desktop;
|
||||||
|
xdg.dataFile."applications/signal.desktop".source = ./config/applications/signal.desktop;
|
||||||
|
xdg.dataFile."applications/vesktop.desktop".source = ./config/applications/vesktop.desktop;
|
||||||
|
xdg.dataFile."applications/steam.desktop".source = ./config/applications/steam.desktop;
|
||||||
|
|
||||||
# ── Packages ─────────────────────────────────────────────────────────────────
|
# ── Packages ─────────────────────────────────────────────────────────────────
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# general
|
# general
|
||||||
|
|||||||
@@ -7,80 +7,88 @@
|
|||||||
|
|
||||||
config = let
|
config = let
|
||||||
useNoctalia = config.niri.useNoctalia;
|
useNoctalia = config.niri.useNoctalia;
|
||||||
in {
|
in lib.mkMerge [
|
||||||
# ── Niri desktop environment ─────────────────────────────────────────────────
|
# ── Niri (shared) ────────────────────────────────────────────────────────────
|
||||||
xdg.configFile."niri" = {
|
{
|
||||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/niri";
|
xdg.configFile."niri" = {
|
||||||
};
|
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/niri";
|
||||||
xdg.configFile."noctalia" = lib.mkIf useNoctalia {
|
|
||||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/noctalia";
|
|
||||||
};
|
|
||||||
xdg.configFile."foot".source = ./config/foot;
|
|
||||||
xdg.configFile."waybar" = lib.mkIf (!useNoctalia) { source = ./config/waybar; };
|
|
||||||
xdg.configFile."fuzzel/fuzzel.ini" = lib.mkIf (!useNoctalia) { source = ./config/fuzzel/fuzzel.ini; };
|
|
||||||
|
|
||||||
home.file.".local/bin/wallpaper.sh" = {
|
|
||||||
source = ./config/niri/wallpaper.sh;
|
|
||||||
executable = true;
|
|
||||||
};
|
|
||||||
home.file.".local/bin/waybar-network.sh" = lib.mkIf (!useNoctalia) {
|
|
||||||
source = ./config/waybar/network.sh;
|
|
||||||
executable = true;
|
|
||||||
};
|
|
||||||
home.file.".local/bin/waybar-weather.sh" = lib.mkIf (!useNoctalia) {
|
|
||||||
source = ./config/waybar/weather.sh;
|
|
||||||
executable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.dataFile."applications/switch-wallpaper.desktop".source = ./config/applications/switch-wallpaper.desktop;
|
|
||||||
xdg.dataFile."applications/signal.desktop".source = ./config/applications/signal.desktop;
|
|
||||||
xdg.dataFile."applications/vesktop.desktop".source = ./config/applications/vesktop.desktop;
|
|
||||||
xdg.dataFile."applications/steam.desktop".source = ./config/applications/steam.desktop;
|
|
||||||
|
|
||||||
systemd.user.services.xwayland-satellite = {
|
|
||||||
Unit = {
|
|
||||||
Description = "Xwayland for niri";
|
|
||||||
BindsTo = [ "graphical-session.target" ];
|
|
||||||
After = [ "graphical-session.target" ];
|
|
||||||
};
|
};
|
||||||
Service = {
|
xdg.configFile."foot".source = ./config/foot;
|
||||||
ExecStart = "${pkgs.xwayland-satellite}/bin/xwayland-satellite";
|
|
||||||
Restart = "on-failure";
|
|
||||||
};
|
|
||||||
Install.WantedBy = [ "graphical-session.target" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.mako = {
|
systemd.user.services.xwayland-satellite = {
|
||||||
enable = true;
|
Unit = {
|
||||||
settings = {
|
Description = "Xwayland for niri";
|
||||||
background-color = "#0a0a0a99";
|
BindsTo = [ "graphical-session.target" ];
|
||||||
text-color = "#f3eeea";
|
After = [ "graphical-session.target" ];
|
||||||
border-color = "#cd0a00";
|
};
|
||||||
border-radius = 8;
|
Service = {
|
||||||
border-size = 1;
|
ExecStart = "${pkgs.xwayland-satellite}/bin/xwayland-satellite";
|
||||||
default-timeout = 7500;
|
Restart = "on-failure";
|
||||||
max-icon-size = 64;
|
};
|
||||||
padding = "10,14";
|
Install.WantedBy = [ "graphical-session.target" ];
|
||||||
font = "JetBrains Mono 12";
|
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# wayland / desktop
|
libnotify
|
||||||
libnotify
|
wl-clipboard
|
||||||
wl-clipboard
|
slurp
|
||||||
slurp
|
grim
|
||||||
grim
|
satty
|
||||||
satty
|
brightnessctl
|
||||||
wlogout
|
lxqt.lxqt-policykit
|
||||||
brightnessctl
|
];
|
||||||
awww
|
}
|
||||||
lxqt.lxqt-policykit
|
|
||||||
] ++ lib.optionals (!useNoctalia) [
|
# ── Noctalia ─────────────────────────────────────────────────────────────────
|
||||||
fuzzel
|
(lib.mkIf useNoctalia {
|
||||||
waybar
|
xdg.configFile."noctalia" = {
|
||||||
] ++ lib.optionals useNoctalia [
|
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/noctalia";
|
||||||
noctalia-shell
|
};
|
||||||
];
|
|
||||||
};
|
home.packages = with pkgs; [
|
||||||
|
noctalia-shell
|
||||||
|
];
|
||||||
|
})
|
||||||
|
|
||||||
|
# ── Non-noctalia ─────────────────────────────────────────────────────────────
|
||||||
|
(lib.mkIf (!useNoctalia) {
|
||||||
|
xdg.configFile."waybar".source = ./config/waybar;
|
||||||
|
xdg.configFile."fuzzel/fuzzel.ini".source = ./config/fuzzel/fuzzel.ini;
|
||||||
|
|
||||||
|
home.file.".local/bin/wallpaper.sh" = {
|
||||||
|
source = ./config/niri/wallpaper.sh;
|
||||||
|
executable = true;
|
||||||
|
};
|
||||||
|
home.file.".local/bin/waybar-network.sh" = {
|
||||||
|
source = ./config/waybar/network.sh;
|
||||||
|
executable = true;
|
||||||
|
};
|
||||||
|
home.file.".local/bin/waybar-weather.sh" = {
|
||||||
|
source = ./config/waybar/weather.sh;
|
||||||
|
executable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.mako = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
background-color = "#0a0a0a99";
|
||||||
|
text-color = "#f3eeea";
|
||||||
|
border-color = "#cd0a00";
|
||||||
|
border-radius = 8;
|
||||||
|
border-size = 1;
|
||||||
|
default-timeout = 7500;
|
||||||
|
max-icon-size = 64;
|
||||||
|
padding = "10,14";
|
||||||
|
font = "JetBrains Mono 12";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
awww
|
||||||
|
wlogout
|
||||||
|
fuzzel
|
||||||
|
waybar
|
||||||
|
];
|
||||||
|
})
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user