2023-03-02 17:14:11 +01:00
|
|
|
{pkgs, ...}: {
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
# file management
|
|
|
|
p7zip
|
|
|
|
unzip
|
|
|
|
zip
|
|
|
|
gnome.file-roller
|
|
|
|
|
|
|
|
# thumbnails
|
|
|
|
webp-pixbuf-loader
|
|
|
|
ffmpegthumbnailer
|
|
|
|
];
|
|
|
|
programs = {
|
|
|
|
dconf.enable = true;
|
|
|
|
noisetorch.enable = true;
|
|
|
|
thunar = {
|
|
|
|
enable = true;
|
|
|
|
plugins = with pkgs.xfce; [
|
|
|
|
thunar-archive-plugin
|
|
|
|
thunar-volman
|
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2023-05-18 15:19:31 +02:00
|
|
|
programs.sway = {
|
|
|
|
enable = true;
|
|
|
|
extraPackages = with pkgs; [
|
|
|
|
foot
|
|
|
|
swaylock-effects
|
|
|
|
swayidle
|
|
|
|
];
|
2023-05-18 19:10:41 +02:00
|
|
|
wrapperFeatures = {
|
|
|
|
base = true;
|
|
|
|
gtk = true;
|
|
|
|
};
|
2023-05-18 15:19:31 +02:00
|
|
|
};
|
2023-05-18 19:10:41 +02:00
|
|
|
# needed for gnome3 pinentry
|
|
|
|
services.dbus.packages = [pkgs.gcr];
|
|
|
|
xdg.portal.enable = true;
|
|
|
|
xdg.portal.wlr.enable = true;
|
2023-05-18 15:19:31 +02:00
|
|
|
|
2023-03-02 17:14:11 +01:00
|
|
|
services = {
|
|
|
|
# mounting
|
|
|
|
gvfs.enable = true;
|
|
|
|
udisks2.enable = true;
|
|
|
|
devmon.enable = true;
|
|
|
|
|
2023-05-17 13:25:59 +02:00
|
|
|
greetd = let
|
|
|
|
sway-run = pkgs.writeShellScript "sway-run" ''
|
|
|
|
# session
|
|
|
|
export XDG_SESSION_TYPE=wayland
|
|
|
|
export XDG_SESSION_DESKTOP=sway
|
|
|
|
export XDG_CURRENT_DESKTOP=sway
|
|
|
|
# wayland
|
|
|
|
export NIXOS_OZONE_WL=1
|
|
|
|
export MOZ_ENABLE_WAYLAND=1
|
|
|
|
export QT_QPA_PLATFORM=wayland
|
|
|
|
export SDL_VIDEODRIVER=wayland
|
|
|
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
|
|
|
|
|
|
|
exec systemd-cat --identifier=sway sway $@
|
|
|
|
'';
|
|
|
|
in {
|
2023-03-28 12:59:48 +02:00
|
|
|
enable = true;
|
|
|
|
settings = {
|
2023-05-17 13:25:59 +02:00
|
|
|
default_session = {
|
|
|
|
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time -r --cmd ${sway-run}";
|
2023-03-28 12:59:48 +02:00
|
|
|
user = "greeter";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2023-03-02 17:14:11 +01:00
|
|
|
# thumbnails
|
|
|
|
tumbler.enable = true;
|
|
|
|
|
|
|
|
gnome.gnome-keyring.enable = true;
|
2023-03-26 00:49:05 +01:00
|
|
|
|
2023-03-02 17:14:11 +01:00
|
|
|
xserver = {
|
|
|
|
enable = true;
|
|
|
|
desktopManager.xterm.enable = false;
|
2023-03-28 12:59:48 +02:00
|
|
|
displayManager.startx.enable = true;
|
2023-03-02 17:14:11 +01:00
|
|
|
libinput.enable = true;
|
2023-03-16 12:50:59 +01:00
|
|
|
windowManager.i3 = {
|
|
|
|
enable = true;
|
2023-04-27 09:30:26 +02:00
|
|
|
package = pkgs.i3;
|
2023-03-16 12:50:59 +01:00
|
|
|
};
|
2023-03-02 17:14:11 +01:00
|
|
|
xkbOptions = "caps:ctrl_modifier";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
security.polkit.enable = true;
|
|
|
|
systemd = {
|
|
|
|
packages = [pkgs.polkit_gnome];
|
|
|
|
user.services.polkit-gnome-authentication-agent-1 = {
|
|
|
|
unitConfig = {
|
|
|
|
Description = "polkit-gnome-authentication-agent-1";
|
|
|
|
Wants = ["graphical-session.target"];
|
|
|
|
WantedBy = ["graphical-session.target"];
|
|
|
|
After = ["graphical-session.target"];
|
|
|
|
};
|
|
|
|
serviceConfig = {
|
|
|
|
Type = "simple";
|
|
|
|
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
|
|
|
Restart = "on-failure";
|
|
|
|
RestartSec = 1;
|
|
|
|
TimeoutStopSec = 10;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|