{ config, pkgs, lib, ... }: { nixpkgs.config.allowUnfree = true; news.display = "silent"; imports = [ ./../programs/alacritty.nix ./../programs/bat.nix ./../programs/beets.nix ./../programs/command-not-found.nix ./../programs/dircolors.nix ./../programs/direnv.nix ./../programs/fzf.nix ./../programs/git.nix ./../programs/htop.nix ./../programs/neovim.nix ./../programs/starship.nix ./../programs/topgrade.nix ./../programs/yt-dlp.nix ./../programs/zsh.nix ./../programs/go.nix ./../packages.nix ]; home = { username = "thilo"; homeDirectory = "/home/thilo"; stateVersion = "22.11"; file = { ".config/nano/nanorc".text = '' set linenumbers include "/usr/share/nano/*.nanorc" ''; ".ssh/config".source = ./../dotfiles/ssh-config; ".gitignore".source = ./../dotfiles/.gitignore; }; sessionVariables = { }; activation = { linkDesktopApplications = { after = [ "writeBoundary" "createXdgUserDirectories" ]; before = [ ]; data = '' for dir in ${config.home.homeDirectory}/.nix-profile/share/applications/*; do chmod +x $(realpath $dir) -v done ''; }; setNodeGlobalDir = { after = [ "writeBoundary" "createXdgUserDirectories" ]; before = [ ]; data = '' mkdir -p ${config.home.homeDirectory}/.node-global ${pkgs.nodejs}/bin/npm config set prefix ${config.home.homeDirectory}/.node-global ''; }; }; sessionPath = [ "${config.home.homeDirectory}/.node-global/bin" ]; }; programs.home-manager.enable = true; nix = { package = pkgs.nixUnstable; extraOptions = '' experimental-features = nix-command flakes ''; }; }