mio-ops/profiles/xmonad.nix

79 lines
2.8 KiB
Nix
Raw Normal View History

2019-10-26 23:12:04 +00:00
# Configuration for my xmonad desktop requirements
{ config, pkgs, ... }:
{
2021-11-16 04:57:23 +00:00
imports = [ ../profiles/picom.nix ];
2021-05-13 00:35:35 +00:00
2020-04-21 08:23:43 +00:00
services = {
2021-11-16 04:57:23 +00:00
devmon.enable = true; # Enable external device automounting.
udev = { packages = with pkgs; [ gnome3.gnome-settings-daemon ]; };
udisks2.enable = true; # Enable udisks2.
2020-04-21 08:23:43 +00:00
xserver = {
2021-11-16 04:57:23 +00:00
enable = true; # Enable the X11 windowing system.
2020-04-21 08:23:43 +00:00
desktopManager = {
2021-11-16 04:57:23 +00:00
xterm.enable = false; # Disable NixOS default desktop manager.
gnome.enable = true; # Enable GNOME desktop environment
2020-04-21 08:23:43 +00:00
};
displayManager = {
2021-11-16 04:57:23 +00:00
defaultSession =
"none+xmonad"; # Set xmonad as the default window manager.
gdm.enable = true; # Enable the GNOME display manager
2020-04-21 08:23:43 +00:00
};
2021-11-16 04:57:23 +00:00
layout = "us"; # Set your preferred keyboard layout.
libinput.enable = true; # Enable touchpad support.
windowManager = { # Open configuration for the window manager.
xmonad.enable = true; # Enable xmonad.
xmonad.enableContribAndExtras =
true; # Enable xmonad contrib and extras.
xmonad.extraPackages =
hpkgs: [ # Open configuration for additional Haskell packages.
hpkgs.xmonad-contrib # Install xmonad-contrib.
hpkgs.xmonad-extras # Install xmonad-extras.
hpkgs.xmonad # Install xmonad itself.
];
2020-04-21 08:23:43 +00:00
};
};
2019-10-26 23:12:04 +00:00
};
sound = {
mediaKeys = {
enable = true;
volumeStep = "5%";
};
};
# Install any additional fonts that I require to be used with xmonad
2021-11-16 04:57:23 +00:00
fonts.fonts = with pkgs;
[
opensans-ttf # Used in in my xmobar configuration
];
2019-10-26 23:12:04 +00:00
# Install other packages that I require to be used with xmonad.
environment.systemPackages = with pkgs; [
2021-11-16 04:57:23 +00:00
feh # A light-weight image viewer to set backgrounds
gnome-themes-extra # Provides Adwaita-dark
gnome3.gnome-tweaks # A tool to customize advanced GNOME 3 options
haskellPackages.libmpd # Shows MPD status in xmobar
haskellPackages.xmobar # A minimalistic text based status bar
haskellPackages.xmonad # Required for user rebuild with (ie: [alt]+Q)
haskellPackages.xmonad-extras # Required for user rebuild with (ie: [alt]+Q)
haskellPackages.xmonad-contrib # Required for user rebuild with (ie: [alt]+Q)
libnotify # Notification client for my Xmonad setup
lxqt.lxqt-notificationd # The notify daemon itself
mpc_cli # CLI for MPD, called from xmonad
scrot # CLI screen capture utility
trayer # A system tray for use with xmonad
xbrightness # X11 brigthness and gamma software control
xflux # Adjusts your screen to emit warmer light at night
xorg.xrandr # CLI to X11 RandR extension
xscreensaver # My preferred screensaver
xsettingsd # A lightweight desktop settings server
2019-10-26 23:12:04 +00:00
];
2020-05-04 09:03:21 +00:00
programs.dconf.enable = true;
2019-10-26 23:12:04 +00:00
}