-{ pkgs, lib, ... }:
+{ pkgs, lib, config, ... }:
+with lib;
{
- console.useXkbConfig = lib.mkDefault true;
+ console.useXkbConfig = mkDefault true;
environment.systemPackages = [
+ pkgs.gdk-pixbuf.dev # for gdk-pixbuf-query-loaders
pkgs.paprefs
+ pkgs.pulseaudio # for pactl when using pipewire
];
- hardware.pulseaudio.enable = lib.mkDefault true;
+
+ # rtkit is optional but recommended
+ security.rtkit.enable = mkDefault config.services.pipewire.enable;
+ hardware.pulseaudio.enable = false;
+ services.pipewire = {
+ enable = true;
+ alsa.enable = mkDefault true;
+ alsa.support32Bit = mkDefault true;
+ pulse.enable = mkDefault true;
+ };
+
# Allow members of the "adbusers" group to mount Android devices via MTP.
programs.adb.enable = true;
programs.dconf.enable = true;
services.dbus.packages = [ pkgs.dconf ];
- services.gvfs.enable = lib.mkDefault true;
- sound.enable = lib.mkDefault true;
+ services.gvfs.enable = mkDefault true;
+ services.avahi.enable = mkDefault true;
services.xserver = {
- enable = lib.mkDefault true;
- libinput.enable = lib.mkDefault true;
- exportConfiguration = lib.mkDefault true; # link /usr/share/X11/ properly
+ enable = mkDefault true;
+ libinput.enable = mkDefault true;
+ exportConfiguration = mkDefault true; # link /usr/share/X11/ properly
desktopManager = {
session = [
- # Let the session be generated by home-manager
+ # Add a session generated by home-manager
{
name = "home-manager";
start = ''
'';
}
];
- xterm.enable = lib.mkDefault false;
+ xterm.enable = mkDefault false;
};
- displayManager.autoLogin.enable = lib.mkDefault true;
+ displayManager.autoLogin.enable = mkDefault true;
};
+
+ services.xserver.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];
}