diff options
Diffstat (limited to 'machines/sternenseemann/fliewatuet.nix')
-rw-r--r-- | machines/sternenseemann/fliewatuet.nix | 272 |
1 files changed, 272 insertions, 0 deletions
diff --git a/machines/sternenseemann/fliewatuet.nix b/machines/sternenseemann/fliewatuet.nix new file mode 100644 index 00000000..6c8994ee --- /dev/null +++ b/machines/sternenseemann/fliewatuet.nix @@ -0,0 +1,272 @@ +# Edit this configuration file to define what should be installed on +{ config, pkgs, ... }: + +let + mytexlive = with pkgs.texlive; combine { inherit scheme-medium minted units collection-bibtexextra; }; +in { + nixpkgs.config.allowUnfree = true; + + # hardware + boot.blacklistedKernelModules = [ "nouveau" ]; + boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usb_storage" ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.initrd.luks.devices = [ { device = "/dev/sda2"; name = "crypted"; } ]; + + fileSystems."/" = { + device = "/dev/dm-0"; + fsType = "btrfs"; + }; + fileSystems."/boot/" = { + device = "/dev/sda1"; + fsType = "vfat"; + }; + + swapDevices = [ ]; + + nix.maxJobs = 8; + + boot.loader.gummiboot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + # sound + # fix sound + boot.extraModprobeConfig = '' + options snd-hda-intel index=1,0 enable_msi=1 + ''; + + hardware.pulseaudio.enable = true; + hardware.pulseaudio.support32Bit = true; + + hardware.opengl.driSupport32Bit = true; + + hardware.enableAllFirmware = true; + + hardware.trackpoint = { + enable = true; + emulateWheel = true; + speed = 250; + sensitivity = 140; + }; + + networking.hostName = "fliewatuet"; # Define your hostname. + networking.networkmanager.enable = true; + + # Select internationalisation properties. + i18n = { + consoleFont = "Lat2-Terminus16"; + consoleKeyMap = "de-latin1"; + defaultLocale = "en_US.UTF-8"; + }; + + # Set your time zone. + time.timeZone = "Europe/Berlin"; + + environment.systemPackages = with pkgs; [ + ## tools + rdiff-backup + pass + wget + curl + stow + scrot + dmenu + mosh + gnupg + gpgme + sudo + silver-searcher + graphicsmagick + dcraw + mkpasswd + nmap + traceroute + file + progress + zip + unzip + atool + manpages + man_db + sshuttle + speedtest-cli + youtube-dl + yafc + psmisc + telnet + + ## dev + git + vim + neovim + gnumake + clang + gcc + gnum4 + automake + valgrind + ghc + cabal-install + haskellPackages.cabal2nix + haskellPackages.stylish-haskell + clisp + go + + ## applications + tmux + htop + mutt + tor + torbrowser + mupdf + zathura + w3m + pythonPackages.alot + msmtp + offlineimap + notmuch + irssi + mytexlive + + ## GUI + # wm etc. + taffybar + xbindkeys + alock + dunst + libnotify + redshift + xorg.xbacklight + xorg.xmodmap + hicolor_icon_theme + networkmanagerapplet + xclip + xsel + # applications + lxappearance + firefox + qutebrowser + gstreamer + termite + feh + pavucontrol + cbatticon + filezilla + screen-message + mumble + libreoffice + + ## audio / video + mpv + abcde + audacity + beets + lame + ffmpeg + + ## services + gutenprint + acpi + + ## games + jdk + ]; + + # Proudly stolen from Profpatsch + fonts.fontconfig = { + defaultFonts = { + monospace = [ "Inconsolata" "Source Code Pro" "DejaVu Sans Mono" ]; + sansSerif = [ "Liberation Sans" ]; + }; + ultimate = { + rendering = { + INFINALITY_FT_FILTER_PARAMS = "08 24 36 24 08"; + INFINALITY_FT_FRINGE_FILTER_STRENGTH = "25"; + INFINALITY_FT_USE_VARIOUS_TWEAKS = "true"; + INFINALITY_FT_WINDOWS_STYLE_SHARPENING_STRENGTH = "25"; + INFINALITY_FT_STEM_ALIGNMENT_STRENGTH = "15"; + INFINALITY_FT_STEM_FITTING_STRENGTH = "15"; + }; + }; + }; + fonts.fonts = with pkgs; [ + corefonts + source-han-sans-japanese + source-han-sans-korean + source-han-sans-simplified-chinese + source-code-pro + dejavu_fonts + ubuntu_font_family + inconsolata + tewi-font + ]; + + # to make Ctrl-Shift-t work in termite + environment.etc."vte.sh" = { source = "${pkgs.gnome3.vte}/etc/profile.d/vte.sh"; }; + + # Enable the OpenSSH daemon. + services.openssh.enable = true; + + # for taffybar + services.upower.enable = true; + + services.tor.enable = true; + + # Enable CUPS to print documents. + services.printing = { + enable = true; + drivers = [ pkgs.gutenprint pkgs.hplip ]; + }; + + services.tlp.enable = true; + + # Enable the X11 windowing system. + services.xserver = { + enable = true; + layout = "de"; + xkbVariant = "neo"; + + desktopManager.xterm.enable = false; + + windowManager.xmonad = { + enable = true; + enableContribAndExtras = true; + }; + displayManager = { + desktopManagerHandlesLidAndPower = false; + sessionCommands = + '' + export BROWSER=firefox + redshift -c .redshift & + xmodmap -e "pointer = 1 25 3 4 5 6 7 8 9" + xbindkeys + cbatticon & + set-bg + ''; + }; + + synaptics.enable = true; + synaptics.tapButtons = false; + synaptics.twoFingerScroll = true; + + videoDrivers = [ "intel" ]; + + startGnuPGAgent = true; + }; + + programs.fish.enable = true; + + users.mutableUsers = false; + users.extraUsers.lukas = { + isNormalUser = true; + uid = 1000; + home = "/home/lukas"; + shell = "/run/current-system/sw/bin/fish"; + group = "users"; + passwordFile = "/home/lukas/.config/passwd"; + extraGroups = [ "audio" "wheel" "networkmanager" ]; + }; + + system.stateVersion = "unstable"; + + programs.ssh.startAgent = false; +} |