enable upower, move noctalia config to niri module, make useNoctalia a module option
This commit is contained in:
@@ -1,83 +1,92 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
let
|
||||
useNoctalia = true;
|
||||
in
|
||||
{
|
||||
# ── Niri desktop environment ─────────────────────────────────────────────────
|
||||
xdg.configFile."niri" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/niri";
|
||||
};
|
||||
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;
|
||||
options.niri.useNoctalia = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = 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" ];
|
||||
config = let
|
||||
useNoctalia = config.niri.useNoctalia;
|
||||
in {
|
||||
# ── Niri desktop environment ─────────────────────────────────────────────────
|
||||
xdg.configFile."niri" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/niri";
|
||||
};
|
||||
Service = {
|
||||
ExecStart = "${pkgs.xwayland-satellite}/bin/xwayland-satellite";
|
||||
Restart = "on-failure";
|
||||
xdg.configFile."noctalia" = lib.mkIf useNoctalia {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/nixos-dotfiles/config/noctalia";
|
||||
};
|
||||
Install.WantedBy = [ "graphical-session.target" ];
|
||||
};
|
||||
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; };
|
||||
|
||||
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.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 = {
|
||||
ExecStart = "${pkgs.xwayland-satellite}/bin/xwayland-satellite";
|
||||
Restart = "on-failure";
|
||||
};
|
||||
Install.WantedBy = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
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; [
|
||||
# wayland / desktop
|
||||
libnotify
|
||||
wl-clipboard
|
||||
slurp
|
||||
grim
|
||||
satty
|
||||
wlogout
|
||||
brightnessctl
|
||||
awww
|
||||
lxqt.lxqt-policykit
|
||||
|
||||
# messaging
|
||||
telegram-desktop
|
||||
signal-desktop
|
||||
vesktop
|
||||
karere
|
||||
] ++ lib.optionals (!useNoctalia) [
|
||||
fuzzel
|
||||
waybar
|
||||
] ++ lib.optionals useNoctalia [
|
||||
noctalia-shell
|
||||
];
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
# wayland / desktop
|
||||
libnotify
|
||||
wl-clipboard
|
||||
slurp
|
||||
grim
|
||||
satty
|
||||
wlogout
|
||||
brightnessctl
|
||||
awww
|
||||
lxqt.lxqt-policykit
|
||||
|
||||
# messaging
|
||||
telegram-desktop
|
||||
signal-desktop
|
||||
vesktop
|
||||
karere
|
||||
] ++ lib.optionals (!useNoctalia) [
|
||||
fuzzel
|
||||
waybar
|
||||
] ++ lib.optionals useNoctalia [
|
||||
noctalia-shell
|
||||
];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user