Finish (?) transition to Niri.
This commit is contained in:
parent
c8f81f4190
commit
a4f0d899c1
4 changed files with 49 additions and 40 deletions
|
@ -37,9 +37,6 @@ with lib; {
|
|||
# Enable smart card support (for YubiKey).
|
||||
services.pcscd.enable = true;
|
||||
|
||||
# Encrypt user's home with fscrypt
|
||||
security.pam.enableFscrypt = true;
|
||||
|
||||
# Enable login manager.
|
||||
programs.regreet = {
|
||||
enable = true;
|
||||
|
@ -65,14 +62,6 @@ with lib; {
|
|||
services.upower.enable = true;
|
||||
services.libinput.enable = true;
|
||||
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = [
|
||||
pkgs.xdg-desktop-portal-gnome
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
];
|
||||
};
|
||||
|
||||
# Virtualisation.
|
||||
programs.virt-manager.enable = true;
|
||||
users.groups.libvirtd.members = ["fern"];
|
||||
|
@ -122,6 +111,10 @@ with lib; {
|
|||
hardware.brillo.enable = true;
|
||||
users.groups.video.members = ["fern"];
|
||||
|
||||
# Control external monitor
|
||||
hardware.i2c.enable = true;
|
||||
services.ddccontrol.enable = true;
|
||||
|
||||
# Enable sound with pipewire.
|
||||
services.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
|
@ -133,7 +126,6 @@ with lib; {
|
|||
};
|
||||
|
||||
# Enable CPU frequency scaling management.
|
||||
services.power-profiles-daemon.enable = mkForce false; # enabled by gnome
|
||||
services.tlp.enable = mkForce false; # enabled by nixos-hardware
|
||||
services.auto-cpufreq.enable = true;
|
||||
|
||||
|
|
|
@ -10,6 +10,19 @@ with lib; {
|
|||
qt.enable = true;
|
||||
gtk.enable = true;
|
||||
|
||||
# XDG portals.
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = [
|
||||
pkgs.xdg-desktop-portal-gnome
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
];
|
||||
};
|
||||
|
||||
# Create home directories.
|
||||
xdg.userDirs.createDirectories = true;
|
||||
|
||||
# Niri WM.
|
||||
programs.niri = {
|
||||
settings = {
|
||||
# Wayland environment variables.
|
||||
|
@ -22,6 +35,7 @@ with lib; {
|
|||
QT_QPA_PLATFORM = "wayland;xcb";
|
||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||||
SDL_VIDEODRIVER = "wayland";
|
||||
GTK_CSD = "0";
|
||||
};
|
||||
|
||||
# X11 support.
|
||||
|
@ -49,8 +63,12 @@ with lib; {
|
|||
# Spawn programs.
|
||||
"Mod+Return".action.spawn = "kitty";
|
||||
"Mod+Space".action.spawn = "fuzzel";
|
||||
"Mod+E".action.spawn = "smile";
|
||||
"Mod+Alt+L".action.spawn = "hyprlock";
|
||||
|
||||
# Show overview
|
||||
"Mod+Escape".action.toggle-overview = {};
|
||||
|
||||
# Media & brightness control.
|
||||
"XF86AudioRaiseVolume" = {
|
||||
allow-when-locked = true;
|
||||
|
@ -72,6 +90,26 @@ with lib; {
|
|||
action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"];
|
||||
};
|
||||
|
||||
"XF86AudioPlay" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = ["playerctl" "play-pause"];
|
||||
};
|
||||
|
||||
"XF86AudioStop" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = ["playerctl" "pause"];
|
||||
};
|
||||
|
||||
"XF86AudioPrev" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = ["playerctl" "previous"];
|
||||
};
|
||||
|
||||
"XF86AudioNext" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = ["playerctl" "next"];
|
||||
};
|
||||
|
||||
"XF86MonBrightnessUp" = {
|
||||
allow-when-locked = true;
|
||||
action.spawn = ["brillo" "-A" "5"];
|
||||
|
@ -248,12 +286,6 @@ with lib; {
|
|||
enable = true;
|
||||
systemd.enable = true;
|
||||
|
||||
style = ''
|
||||
* {
|
||||
border-radius: 0;
|
||||
}
|
||||
'';
|
||||
|
||||
settings.main = {
|
||||
modules-left = ["niri/workspaces"];
|
||||
modules-center = ["clock"];
|
||||
|
@ -263,6 +295,7 @@ with lib; {
|
|||
bat = "BAT0";
|
||||
format-icons = ["" "" "" "" "" "" "" "" ""];
|
||||
format = "{icon} {capacity}%";
|
||||
format-charging = " {icon} {capacity}%";
|
||||
tooltip = false;
|
||||
};
|
||||
|
||||
|
@ -297,24 +330,8 @@ with lib; {
|
|||
|
||||
stylix.targets.waybar.font = "sansSerif"; # use sans-serif font, not monospaced.
|
||||
|
||||
# polkit-gnome.
|
||||
systemd.user.services.polkit-gnome-authentication-agent-1 = {
|
||||
Unit.Description = "polkit-gnome-authentication-agent-1";
|
||||
|
||||
Install = {
|
||||
WantedBy = ["graphical-session.target"];
|
||||
Wants = ["graphical-session.target"];
|
||||
After = ["graphical-session.target"];
|
||||
};
|
||||
|
||||
Service = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 1;
|
||||
TimeoutStopSec = 10;
|
||||
};
|
||||
};
|
||||
# Enable polkit-gnome.
|
||||
services.polkit-gnome.enable = true;
|
||||
|
||||
# Wallpaper manager.
|
||||
services.hyprpaper.enable = true;
|
||||
|
@ -357,6 +374,7 @@ with lib; {
|
|||
noto-fonts-cjk-serif
|
||||
ns-usbloader
|
||||
obsidian
|
||||
playerctl
|
||||
prismlauncher
|
||||
protonmail-desktop
|
||||
rockbox-utility
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue