{ config, pkgs, ... }: { imports = [ /etc/nixos/hardware-configuration.nix ./i3.nix ./basic-tools.nix ]; boot.kernelPackages = pkgs.linuxPackages_latest; nix.useChroot = true; nix.binaryCaches = [ https://hydra.nixos.org https://cache.nixos.org ]; nix.trustedBinaryCaches = [ https://hydra.nixos.org https://cache.nixos.org ]; nix.binaryCachePublicKeys = [ "hydra.nixos.org-1:CNHJZBh9K4tP3EKF6FkkgeVYsS3ohTl+oS0Qa8bezVs=" ]; nix.extraOptions = '' auto-optimise-store = true binary-caches-parallel-connections = 10 ''; networking.networkmanager.enable = true; networking.firewall.enable = true; time.timeZone = "Europe/Vienna"; # Select internationalisation properties. # i18n = { # consoleFont = "lat9w-16"; # consoleKeyMap = "us"; # defaultLocale = "en_US.UTF-8"; # }; environment.systemPackages = with pkgs.haskellPackages; with pkgs; [ gitg gmpc m4 subversion openjdk8 sbt scala idea.idea-community # firefoxWrapper # qutebrowser chromium # thunderbird qalculate-gtk speedcrunch viewnior gnupg pass xclip pwgen remmina ledger hledger hledger-diff cmake mpv wireshark-gtk mutt goldendict patchelf bazaar (texlive.combine { inherit (texlive) scheme-full; # pkgFilter = pkg: pkg.tlType != "source" && pkg.tlType != "doc"; }) biber androidsdk_4_4 gimp inkscape jabref pdfpc # haskell dev cabal2nix cabal-install ghc-mod # emacs emacs ghostscript # for auctex aspell libreoffice calibre mediainfo isync mu msmtp veriT minisat prover9 eprover metis-prover spass z3 cvc4 why3 graphviz # toysolver tip-lib coq_8_5 emacsPackages.proofgeneral_4_3_pre ] ++ (with aspellDicts; [ en de fr nl ]); nixpkgs.config.packageOverrides = pkgs: rec { idea.idea-community = pkgs.idea.idea-community.overrideDerivation (oldAttrs: rec { name = "idea-community-${version}"; version = "2016.1.eap"; src = pkgs.fetchurl { url = "https://download.jetbrains.com/idea/ideaIC-145.969.6-no-jdk.tar.gz"; sha256 = "b9d0abc4cc7a5e2ee019028335dfd096da2587ed8165d30871cb00a8592148cc"; }; }); neovim = pkgs.neovim.override { extraPythonPackages = [ pkgs.pythonPackages.websocket_client ]; }; }; nixpkgs.config.allowTexliveBuilds = true; # Enable the OpenSSH daemon. services.openssh = { enable = true; permitRootLogin = "no"; passwordAuthentication = false; }; programs.ssh.startAgent = false; # Enable CUPS to print documents. services.avahi.enable = true; # cups browsing support services.printing = { enable = true; drivers = [ pkgs.hplip ]; }; # services.colord.enable = true; # IntelliJ boot.kernel.sysctl."fs.inotify.max_user_watches" = 524288; # gapt: `ulimit -n` was 256 security.pam.loginLimits = [ { domain = "*"; type = "-"; item = "nofile"; value = "4096"; } ]; fileSystems."/mnt/vaccaria" = { device = "//vaccaria.mtlaa.gebner.org/export"; fsType = "cifs"; options = [ "noauto" "x-systemd.automount" "credentials=/etc/smbcredentials/vaccaria" ]; }; fileSystems."/mnt/aruanus" = { device = "//aruanus.htdf.gebner.org/export"; fsType = "cifs"; options = [ "noauto" "x-systemd.automount" "credentials=/etc/smbcredentials/aruanus" ]; }; users.extraUsers.gebner = { isNormalUser = true; extraGroups = [ "wheel" "networkmanager" ]; # shell = "${pkgs.zsh}/bin/zsh"; password = if config.virtualisation != null then "" else null; }; system.fsPackages = [ pkgs.ntfs3g ]; }