{ config, lib, pkgs, ... }:

{
  environment.systemPackages = with pkgs; [
    # Monitoring
    htop
    acpi
    # Password management
    gnupg
    pass-wayland
    passff-host
    gitAndTools.pass-git-helper
    pinentry-gtk2
    # Browsers
    firefox
    ungoogled-chromium
    # LaTeX
    texlive.combined.scheme-full
    pandoc
    haskellPackages.pandoc-citeproc
    # Text editors
    neovim
    emacsPgtkGcc
    ripgrep
    fd
    clang
    coreutils
    # Terminals
    tmux
    tmuxp
    fish
    # Development
    git
    direnv
    lorri
    podman-compose
    gnumake
    gitAndTools.pre-commit
    # Rice
    adapta-gtk-theme
    paper-icon-theme
    # Audio
    mopidy
    ncmpcpp
    mpc_cli
    alsa-firmware
    # Productivity
    fff
    zathura
    libreoffice-fresh
    gnome3.simple-scan
    bc
    # Mail stack
    neomutt
    isync
    notmuch
    msmtp
    imapnotify
    w3m
    urlscan
    # Media
    gimp
    mpv
    nodePackages.webtorrent-cli
    transmission-gtk
    youtube-dl-light
    calibre
    ardour
    # File management
    zip
    unzip
    unar
    # Overlays
    cachix
    # Programming tools
    ## Shell
    shellcheck
    shfmt
    # Nix
    nixfmt
    ## Python
    nodePackages.pyright
    black
    # C/C++
    clang-tools
    # Javascript
    nodePackages.javascript-typescript-langserver
  ];

  # Fonts declaration
  fonts = {
    fonts = with pkgs; [
      google-fonts
      emacs-all-the-icons-fonts
      terminus-nerdfont
      iosevka-bin
    ];
  };

}