configuration.nix
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| configuration.nix [2026/06/21 20:56] – Add note about symlinking sam | configuration.nix [2026/06/29 14:27] (current) – tweaks sam | ||
|---|---|---|---|
| Line 45: | Line 45: | ||
| # Enable networking | # Enable networking | ||
| networking.networkmanager.enable = true; | networking.networkmanager.enable = true; | ||
| + | |||
| + | # Enable bluetooth | ||
| + | hardware.bluetooth = { | ||
| + | enable = true; | ||
| + | powerOnBoot = false; | ||
| + | }; | ||
| # Set your time zone. | # Set your time zone. | ||
| Line 85: | Line 91: | ||
| security.pam.services = { | security.pam.services = { | ||
| greetd.enableGnomeKeyring = true; | greetd.enableGnomeKeyring = true; | ||
| + | # Necessary for swaylock to work correctly. | ||
| + | swaylock = {}; | ||
| }; | }; | ||
| Line 96: | Line 104: | ||
| }; | }; | ||
| }; | }; | ||
| + | }; | ||
| + | |||
| + | services.logind.settings.Login = { | ||
| + | # don’t shutdown when power button is short-pressed. We want sway | ||
| + | # to handle that key instead. | ||
| + | HandlePowerKey = " | ||
| }; | }; | ||
| Line 115: | Line 129: | ||
| # when necessary. | # when necessary. | ||
| services.thermald.enable = true; | services.thermald.enable = true; | ||
| + | |||
| + | # A service which automatically mounts external storage devices. | ||
| + | services.udisks2.enable = true; | ||
| ## Printing ########## | ## Printing ########## | ||
| Line 140: | Line 157: | ||
| # Permits adjustment of audio volume via pactl | # Permits adjustment of audio volume via pactl | ||
| pactl = " | pactl = " | ||
| + | # Permits locking the screen | ||
| + | swaylock = " | ||
| in { | in { | ||
| home.packages = with pkgs; [ | home.packages = with pkgs; [ | ||
| - | kdePackages.falkon | ||
| - | |||
| # For keeping track of passwords: | # For keeping track of passwords: | ||
| pass | pass | ||
| Line 208: | Line 225: | ||
| # text rendering: | # text rendering: | ||
| extraConfig = " | extraConfig = " | ||
| + | }; | ||
| + | |||
| + | programs.rofi = { | ||
| + | enable = true; | ||
| + | modes = [ " | ||
| + | theme = " | ||
| + | }; | ||
| + | |||
| + | # Client for udisks2 | ||
| + | services.udiskie = { | ||
| + | enable = true; | ||
| }; | }; | ||
| Line 218: | Line 246: | ||
| # it later. | # it later. | ||
| MU4E = " | MU4E = " | ||
| + | EDITOR = " | ||
| }; | }; | ||
| Line 275: | Line 304: | ||
| # Launching | # Launching | ||
| + | " | ||
| " | " | ||
| " | " | ||
| - | " | + | " |
| + | |||
| + | # Locking | ||
| + | " | ||
| } | } | ||
| ]; | ]; | ||
| Line 320: | Line 353: | ||
| ]; | ]; | ||
| events = { | events = { | ||
| - | " | + | |
| + | | ||
| + | " | ||
| }; | }; | ||
| + | }; | ||
| + | |||
| + | # Locks the screen when power button is pressed. | ||
| + | programs.swaylock = { | ||
| + | enable = true; | ||
| + | }; | ||
| + | |||
| + | # Displays notifications when called upon. | ||
| + | services.mako = { | ||
| + | enable = true; | ||
| + | settings = { | ||
| + | default-timeout = 5000; # 5 seconds. | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | programs.firefox = { | ||
| + | enable = true; | ||
| }; | }; | ||
| Line 349: | Line 401: | ||
| # $ nix search wget | # $ nix search wget | ||
| environment.systemPackages = with pkgs; [ | environment.systemPackages = with pkgs; [ | ||
| - | | + | |
| - | + | | |
| - | # A PDF viewer | + | |
| - | | + | kdePackages.okular |
| + | | ||
| + | gphoto2 | ||
| ## In Service of Emacs ########## | ## In Service of Emacs ########## | ||
| Line 358: | Line 412: | ||
| # Ghostscript is necessary to interpret PDF files in emacs' | # Ghostscript is necessary to interpret PDF files in emacs' | ||
| # document viewer. | # document viewer. | ||
| - | | + | ghostscript |
| - | # A spell-checking | + | |
| - | | + | |
| - | | + | |
| - | pkgs.ripgrep | + | |
| ]; | ]; | ||
| - | |||
| - | # Some programs need SUID wrappers, can be configured further or are | ||
| - | # started in user sessions. | ||
| - | # programs.mtr.enable = true; | ||
| - | # programs.gnupg.agent = { | ||
| - | # | ||
| - | # | ||
| - | # }; | ||
| - | |||
| - | # List services that you want to enable: | ||
| - | |||
| - | # Enable the OpenSSH daemon. | ||
| - | # services.openssh.enable = true; | ||
| - | |||
| - | # Open ports in the firewall. | ||
| - | # networking.firewall.allowedTCPPorts = [ ... ]; | ||
| - | # networking.firewall.allowedUDPPorts = [ ... ]; | ||
| - | # Or disable the firewall altogether. | ||
| - | # networking.firewall.enable = false; | ||
| # This value determines the NixOS release from which the default | # This value determines the NixOS release from which the default | ||
configuration.nix.1782075376.txt.gz · Last modified: by sam