{ config, pkgs, inputs, lib, ... }: { home.username = "till"; home.homeDirectory = "/home/till"; home.stateVersion = "22.11"; nixpkgs = { config = { allowUnfree = true; allowUnfreePredicate = (_: true); }; }; programs.home-manager.enable = true; xdg.userDirs = { enable = true; createDirectories = true; download = "${config.home.homeDirectory}/tmp"; music = "${config.home.homeDirectory}/media/music"; pictures = "${config.home.homeDirectory}/media/img"; videos = "${config.home.homeDirectory}/media/vid"; documents = "${config.home.homeDirectory}/misc"; templates = "${config.xdg.dataHome}/templates"; }; services.syncthing.enable = true; home.file.".npmrc".text = '' prefix = ${config.xdg.dataHome}/npm/packages ''; xdg.configFile."castget/castget.conf".source = ./castget/castget.conf; home.packages = with pkgs; [ # commandline fzf nnn jq progress silver-searcher tmux wl-clipboard # messenger mattermost-desktop signal-desktop tdesktop element-desktop whatsapp-for-linux # email msmtp notmuch # isync w3m openssl gnupg urlscan # office khal khard taskopen okular xournalpp evolution # text publishing hunspell hunspellDicts.de_DE hunspellDicts.en_US hunspellDicts.th_TH hyphen libreoffice pandoc poppler_utils zathura zotero # graphics drawing gimp godot_4 inkscape imagemagick ghostscript scrcpy # web chromium mullvad-vpn nyxt # media bookworm castget freetube qbittorrent mindustry rhythmbox vlc yt-dlp # development bundler bundix nodejs android-studio netlify-cli appimage-run # secrets libsecret keepassxc yubikey-manager-qt ]; imports = [ ./alias.nix ./calendars.nix ./desktop ./firefox.nix ./fish.nix ./foot.nix ./mail ./nvim ./openconnect.nix ./r.nix ./tex.nix ./tmux ]; programs.nix-index = { enable = true; enableFishIntegration = true; }; programs.git = { enable = true; userName = "Till"; userEmail = "till@ktiu.net"; lfs = { enable = true; }; extraConfig = { init = { defaultBranch = "main"; }; }; }; programs.taskwarrior = { enable = true; dataLocation = "${config.xdg.dataHome}/taskwarrior/tasks"; colorTheme = "light-256"; config = { report.list.columns = ["id" "depends.indicator" "priority" "project" "recur.indicator" "scheduled.countdown" "due" "until.age" "status.short" "description.count" "tags"]; report.list.labels= ["ID" "D" "Prio" "Proj" "R" "Scheduled" "Due" "Until" "S" "Description" "Tags"]; }; extraConfig = " hooks.location=${config.xdg.dataHome}/taskwarrior/hooks verbose=affected,context,edit,label,header,new-id,project,special,sync,recur "; }; programs.bottom = { enable = true; settings.flags.color = "default-light"; }; programs.obs-studio.enable = true; }