diff options
Diffstat (limited to 'configuration.nix')
-rw-r--r-- | configuration.nix | 194 |
1 files changed, 27 insertions, 167 deletions
diff --git a/configuration.nix b/configuration.nix index c55e8af..e410470 100644 --- a/configuration.nix +++ b/configuration.nix @@ -5,24 +5,20 @@ { config, pkgs, ... }: { - imports = - [ # Include the results of the hardware scan. - ./hardware-configuration.nix - # ./pc_t14.nix - ]; - - boot = { - # Use the GRUB 2 boot loader. - loader.grub = { - enable = true; - version = 2; - }; - tmpOnTmpfs = true; - supportedFilesystems = [ "ntfs" ]; - kernel.sysctl = { + imports = + [ # Include the results of the hardware scan. + ./hardware-configuration.nix + ./pc_t14.nix + ./desktop.nix + ]; + + boot = { + tmpOnTmpfs = true; + supportedFilesystems = [ "ntfs" ]; + kernel.sysctl = { "kernel.sysrq"=1; }; - }; + }; # Enable sound. sound.enable = true; @@ -31,33 +27,10 @@ opengl.enable = true; enableRedistributableFirmware = true; - # Thinkpad stuff - acpilight.enable = true; - bluetooth.enable = false; - - pulseaudio = { - enable = true; - # Stupid but need it to control sound from acpid - # systemWide = true; - - # Enable bluetooth audio - package = pkgs.pulseaudioFull; - }; }; networking = { - # Hostname and wireless enabled - # set in device specific file - - # wireless.enable = true; - - # The global useDHCP flag is deprecated, therefore explicitly set to false here. - # Per-interface useDHCP will be mandatory in the future, so this generated config - # replicates the default behaviour. - interfaces.enp0s25.useDHCP = true; - interfaces.wlp3s0.useDHCP = true; - # Firewall configuration # firewall.enable = true; yeah who needs that shit @@ -84,165 +57,52 @@ # Enable the OpenSSH daemon. # services.openssh.enable = true; - programs.gnupg.agent = { - enable = true; - enableSSHSupport = true; - pinentryFlavor = "gtk2"; + programs = { + ssh.startAgent = false; + gnupg.agent = { + enable = true; + enableSSHSupport = true; + pinentryFlavor = "gtk2"; + }; }; programs.dconf.enable = true; - # Enable the X11 windowing system. services = { - xserver = { - enable = true; - layout = "us"; - xkbVariant = "altgr-intl"; - exportConfiguration = true; - - windowManager = { - i3 = { - enable = false; - package = pkgs.i3-gaps; - }; - qtile.enable = false; - }; - - displayManager = { - defaultSession = "none+script"; - session = [{ - name = "script"; - manage = "window"; - start = - '' - /home/julian/.nixxstart - ''; - }]; - }; - - desktopManager = { - xterm.enable = false; - }; - - # Touchpad studd - libinput.enable = true; - - # Start dbus? - startDbusSession = true; - }; - # Auto mounting - gvfs.enable = true; - - # Yubikey - pcscd.enable = true; - - # Thinkpad - acpid = { - enable = true; - # Turn down sound when inserting headphones - handlers = { - headphone = { - action = - '' - vals=($1) - case ''${vals[2]} in - plug) - whoami >> /tmp/acpi.log - amixer set Master 10% - ;; - esac - ''; - event = "jack/headphone.*"; - }; - }; - }; - tlp.enable = true; - - # Evolution - gnome3 = { - gnome-keyring.enable = true; - evolution-data-server.enable = true; - }; - - # Enable CUPS to print documents. - printing.enable = true; - - # blueman.enable = true; - - postgresql = { - enable = false; - initialScript = pkgs.writeText "backend-initScript" '' - CREATE ROLE julian WITH LOGIN PASSWORD 'hejmeddig' CREATEDB; - CREATE DATABASE julian; - GRANT ALL PRIVILEGES ON DATABASE julian TO julian; - ''; - }; + udev.packages = [ pkgs.yubikey-personalization ]; }; # Define a user account. Don't forget to set a password with ‘passwd’. users.users.julian = { isNormalUser = true; shell = pkgs.zsh; - extraGroups = [ "wheel" "video" ]; - }; - - virtualisation.docker = { - enable = false; + extraGroups = [ "wheel" "video" "vboxusers" "cdrom" ]; }; + virtualisation.docker.enable = false; # This value determines the NixOS release with which your system is to be # compatible, in order to avoid breaking some software such as database # servers. You should change this only after NixOS release notes say you # should. - system.stateVersion = "20.09"; # Did you read the comment? - - fonts.fonts = with pkgs; [ - noto-fonts noto-fonts-emoji liberation_ttf ubuntu_font_family cozette - ]; + system.stateVersion = "21.05"; # Did you read the comment? # List packages installed in system profile. To search, run: # $ nix search wget nixpkgs.config.allowUnfree = true; environment = { - etc = { - "docker/daemon.json".text = '' - { "dns": [ "1.1.1.1", "9.9.9.9" ] } - ''; - }; systemPackages = with pkgs; [ # General stuff wget vim neovim git htop zsh stow pass tree dnsutils gnupg zip - unzip gopass tig file imagemagick whois nmap usbutils lshw gnumake + unzip tig file imagemagick whois nmap usbutils lshw gnumake aspell aspellDicts.da aspellDicts.en pv acpi jq killall netcat-gnu perl gopass - cowsay gdb man-pages sox + cowsay gdb man-pages sox gcc binutils python3 python - # Landuage support - rustup gcc binutils python3 python go clang-tools + # Nixos stuff + nox # Network stuff networkmanagerapplet networkmanager-openconnect iw batctl wirelesstools - - # X stuff - feh xscreensaver dmenu rofi xorg.xmodmap xss-lock xclip - acpilight xdotool dunst xcompmgr scrot libnotify i3lock - - # Gui applications - firefox pavucontrol okular leafpad inkscape gimp - meld pinentry gnome3.gnome-system-monitor gnome3.dconf - termite quasselClient wireshark spotify - gnome3.file-roller gnome3.gnome-calculator - gnome3.simple-scan vlc mpv xorg.xev gnome3.evolution - evolution-data-server vimHugeX tor-browser-bundle-bin - (mumble.override { pulseSupport = true; }) - libreoffice-fresh liferea qutebrowser - - # Other stuff - # texlive.combined.scheme-full biber - youtube-dl sshpass - - # Hardware stuff. X230 and T14 - linuxPackages.acpi_call ]; }; } |