{ # Snowfall Lib provides a customized `lib` instance with access to your flake's library # as well as the libraries available from your flake's inputs. lib, # An instance of `pkgs` with your overlays and packages applied is also available. pkgs, # You also have access to your flake's inputs. inputs, # Additional metadata is provided by Snowfall Lib. system, # The system architecture for this host (eg. `x86_64-linux`). target, # The Snowfall Lib target for this system (eg. `x86_64-iso`). format, # A normalized name for the system target (eg. `iso`). virtual, # A boolean to determine whether this system is a virtual target using nixos-generators. systems, # An attribute map of your defined hosts. # All other arguments come from the module system. config, host, ... }: with lib; let cfg = config.modules.suites.default; in { options.modules.suites.default = { enable = mkOption { default = false; }; }; config = mkIf cfg.enable { # TODO: put this and relevant packages into desktop suite services.blueman-applet.enable = true; services.nextcloud-client.enable = true; services.nextcloud-client.startInBackground = true; services.network-manager-applet.enable = true; services.syncthing.tray.enable = true; services.syncthing.tray.command = "syncthingtray --wait"; # Wait for tray to become available programs.chromium = { enable = true; extensions = [ # Tampermonkey { id = "dhdgffkkebhmkfjojejmpbldmpobfkfo"; } ]; }; home.packages = with pkgs; [ android-tools # adb arandr audacity audible-cli bat calibre # ebook manager and viewer cargo clippy cntr # nix debugger conda dbeaver-bin devbox # run docker-commands digikam discord drawio du-dust # Like du tree but better # dvdisaster # element-desktop # rocketchat-desktop thunderbird tdesktop # telegram # schildichat-desktop # not updated regularly nheko evince # Simple pdf reader, good for focusing on document content fd # better find fdupes # find and delete duplicate files ffmpeg findutils # locate firefox fzf # Fuzzy finder gcc gcolor3 # Color picker # geogebra ghostscript # needed for imagemagick with pdfs imagemagick gimp git gnome.cheese gnupg gradle handbrake hexedit htop (texlive.combine { # for rendering latex in inkscape inherit (texlive) scheme-medium standalone amsmath preview ; }) # (pkgs.inkscape-with-extensions.override { # inkscapeExtensions = [ pkgs.inkscape-extensions.textext ]; # }) # inkscape-with-extensions # inkscape-extensions.textext inkscape jdk jq # Command line JSON processor julia-bin killall kitty # Terminal languagetool # Grammar checker lazygit # Git client libclang libnotify libreoffice links2 # Tui web-browser lnav # log analyzing tool mate.engrampa matlab # Using nix-matlab overlay defined in flake maven mc # Tui file browser # nix-index nmap nodejs nomacs # Image viewer okular # Pdf reader with many features, good for commenting documents p7zip # unzip 7zip archives parted pavucontrol pciutils # lspci pdfsam-basic # Split, merge, etc for pdfs pkg-config # Often needed to build something poppler_utils # Pdf utils including pdfimages pwndbg # improved gdb (debugger) python3 libqalculate # Nice tui calculator (qalc) qalculate-gtk # Nice gui calculator qpdfview # qutebrowser # realvnc-vnc-viewer ripgrep # better grep rnr # renaming tool rpi-imager # make isos # rustdesk rust-analyzer rustc rustfmt sage # Maths notebooks scrcpy # Mirror android screen to pc # shellcheck # Check bash scripts for common errors sqlite tealdeer # tldr topgrade # System update tor-browser tree unetbootin # TODO unixtools.procps # TODO unstable.path-of-building # Path of Building unzip usbutils # lsusb vlc watchexec # Run command when any file in current dir changes wezterm # Terminal wget wine winetricks wireguard-tools # wg-quick xclip # x11 clipboard access from terminal xfce.mousepad # simple text editor xorg.xkill xournalpp # Edit pdf files zip zoom-us # Video conferencing zotero # Manage papers and other sources ## My scripts frajul.deploy-to-pianopi frajul.edit-config frajul.lntocp frajul.open-messaging frajul.xwacomcalibrate (pkgs.writeShellScriptBin "matlab-paper" '' matlab -desktop -sd "/home/julian/dev/phdthesis/Phase B/mainSimulation" -softwareopengl '') (pkgs.writeShellScriptBin "matlab-robotik" '' matlab -desktop -sd "/home/julian/nas-sync/Studium/Vorlesungen-Master/ss24/Robotik2" -softwareopengl '') (pkgs.writeShellScriptBin "matlab-gram" '' export GTK_PATH=/usr/lib/gtk-3.0 nix shell nixpkgs#gcc11 --command matlab -desktop -sd "/home/julian/dev/matlab-gram" -softwareopengl '') (pkgs.writeShellScriptBin "expenses-tracker" '' java -jar /home/julian/dev/expensestracker/app/build/libs/app.jar '') ]; }; }