{ pkgs, ... }: with pkgs; let unstable = import {}; mybrowser = firefox; desktopApps = [ mybrowser calibre dino zotero keepassxc ding aspell aspellDicts.de aspellDicts.en # for kate/KDE applications hunspellDicts.de-de hunspellDicts.en-us hunspellDicts.en-gb-ise seafile-client alacritty libreoffice-fresh backintime-common anki signal-desktop (tor-browser-bundle-bin.override {mediaSupport=true;pulseaudioSupport=true;}) virtualbox pdfpc quaternion #nheko gpx-viewer gpxsee (corebird.overrideAttrs (oldAttrs: {src = fetchFromGitHub { owner = "IBBoard"; repo = "corebird"; rev = "bc758889a5ac304101001c36eafdb219a0acfda7"; sha256 = "1yiflxvswrybabqq5cd6x9i740560c23p58gvcn9b6riwhxzrlb9"; };})) # (corebird.overrideAttrs (oldAttrs: {src = fetchFromGitHub { # owner = "nextbird"; # repo = "nextbird"; # rev = "c5d1f4edc60634746a0c56d2430ec7933dd8c16e"; # sha256 = "0iwg6brwbbmapsh559my7zwhg91xb88w4kq3sqykc6cd3dvyr9xy"; # };})) tootle subsurface # for research project twister ]; graphicsApps = [ inkscape unstable.darktable hugin luminanceHDR exiftool gimp ] ++ (with gimpPlugins; [ resynthesizer2 fourier lqrPlugin ]); multimediaApps = [ mpv vlc #amarok-kf5 clementine youtube-dl sonic-pi musescore audacity avidemux linphone picard ]; cliApps = [ myVim htop tmux httpie ponysay gti tree lsof mosh openssh sshfsFuse cryfs smbnetfs # for FUSE smb mounting sshuttle thefuck gnupg unar pwgen pandoc agrep pdfgrep torsocks ncdu psmisc # for killall dos2unix reptyr # re-bind running program to other tty xclip ]; nixHelpers = [ nox ]; kdeTools = with kdeApplications; [ okular redshift-plasma-applet gwenview yakuake kmail kontact korganizer akonadi-mime #for KOrganizer kaddressbook kdeconnect dolphin spectacle kate kleopatra qdirstat ark kwalletmanager #ktouch kcharselect konversation okteta ktorrent krdc skanlite akonadiconsole plasma-browser-integration ] ++ (with kdeFrameworks; [ networkmanager-qt kcrash plasma5.breeze-gtk libsForQt5.phonon-backend-vlc #(phonon-backend-vlc.override {qtbase=qt5.qtbase; qtx11extras=qt5.qtx11extras;}) ]); devTools = [ curl httpie gdb strace ltrace valgrind zeal gcc kdevelop qtcreator shellcheck mtr wireshark ag bat ]; latexApps = [ texmaker # customize texlive installation (texlive.combine { inherit (texlive) scheme-medium xetex luatex unicode-math fontspec collection-binextra collection-fontsrecommended collection-latex collection-latexextra collection-latexrecommended collection-langgerman IEEEtran moderncv acronym ccicons fontawesome koma-script; }) ]; pythonApps = with python3Packages; [ notebook ipython pip numpy matplotlib jedi flake8 mypy ] ++ (with python2Packages; [ ]); fonts = [ comic-neue source-sans-pro source-serif-pro fira-code ubuntu_font_family twemoji-color-font # TODO: vollkorn # TODO: humor-sans ]; computerVisionTooling = [ ]; in { home.packages = ([] ++ desktopApps ++ latexApps ++ pythonApps ++ graphicsApps ++ cliApps ++ multimediaApps ++ devTools ++ kdeTools ++ fonts ++ nixHelpers ++ computerVisionTooling ); programs.home-manager.enable = true; programs.home-manager.path = "$HOME/.nix-defexpr/channels/home-manager"; home.stateVersion = "18.09"; programs.direnv = { enable = true; enableZshIntegration = true; }; # programs.vim = # { enable = true; # }; services.gpg-agent = { enable = true; enableSshSupport = true; }; }