########################
# Full System Packages #
########################

{ config, pkgs, ... }:

{
  environment.systemPackages = with pkgs;
  [
    #################
    # Communication #
    #################
    dino             # XMPP Client
    discord          # Discord Client
    element-desktop  # Matrix Client
    #jitsi           # Video Calls & Chat

    ###########
    # Cursors #
    ###########
    phinger-cursors

    #########
    # Fonts #
    #########
    anonymousPro     # TrueType Font Set for Source Code
    roboto           # Android Family of Fonts
    tamsyn           # Monospace Bitmap Font for Programmers

    #########
    # Games #
    #########
    #airshipper               # Veloren RPG Updater
    #assaultcube              # First-Person Shooter
    #alienarena               # First-Person Shooter
    #cataclysm-dda            # Zombie Rogue-Like
    #factorio                 # Build & Maintain Factories
    #freeciv                  # Civilization Strategy Clone
    #freenukum                # Duke Nukum 1 Clone
    #gamemode                 # Optimse Linux System Performance
    #gzdoom                   # Doom Clone based on ZDoom
    #hedgewars                # Worms Clone
    #openttd                  # Transport Tycoon Deluxe Clone
    #redeclipse               # First-Person Shooter
    retroarchFull             # Multi-Platform Emulator
    #sauerbraten              # First-Person Shooter, successor of Cube
    #scorched3d               # Scorched Earth 3D Clone
    #shattered-pixel-dungeon  # Roguelike Dungeon Crawl
    #supertux                 # Super Mario Clone
    #supertuxkart             # Super Mario Kart Clone
    #tuxpaint                 # Drawing for Children
    #warzone2100              # Real-Time Strategy
    #warsow                   # First-Person Shooter
    #wesnoth                  # Fantasy Strategy
    #ufoai                    # X-Com Clone
    #xonotic                  # First-Person Shooter
    #zdoom                    # Doom Clone
    #zeroad                   # Ancient Warfare Strategy

    # Todo:
    #zero ballistics          # ??
    #the dark mod             # ??

    #########
    # Gnome #
    #########
    adw-gtk3            # GTK3 libadwaita Theme ported to GTK-3
    dconf               # Gnome Configuration
    gnome.gnome-tweaks  # Gnome Customization Tool  

    ##################
    # Game Launchers #
    ##################
    #heroic          # GOG & Epic Games Launcher
                     # NOTE: Issues with authenticating, package out of date, using Flatpak
    #itch            # itch.io Games Launcher
    #legendary-gl    # Epic Games Launcher Alternative
    #lutris          # Issues with Origin installation,
                     # using Flatpak
    #steam           # Steam Game Launcher, using xxx

    ############
    # Internet #
    ############
    #betterbird             # Email Client, No pkg,
                            # using flatpak
    #brave                  # Thunderbird Fork, issues
                            # w/ BAT, using flatpak
    librewolf              # Firefox Web Browser Fork
    #thunderbird            # Email Client
    #tigervnc               # VNC Client
    tor-browser-bundle-bin  # Privacy Web Browser

    #######
    # KDE #
    #######
    #kate                              # Text Editor
    #kde-gtk-config                    # KDE GTK Configuration
    #libsForQt5.applet-window-buttons  # KDE Applet
    #libsForQt5.breeze-gtk             # GTK Breeze Theming
    #libsForQt5.breeze-qt5             # QT5 Breeze Theming
    #libsForQt5.breeze-icons           # Breeze Icons
    #libsForQt5.filelight              # Storage Usage Application
    #libsForQt5.kaccounts-providers    # KDE Accounts#libsForQt5.qtstyleplugin-kvantum  # KDE Theming
    #libsForQt5.kdecoration            # KDE Theming
    #libsForQt5.powerdevil             # Power Manager
    #libsForQt5.sddm                   # SDDM Libraries
    #libsForQt5.sddm-kcm               # SDDM Libraries
    # Enable KDE Wallet PAM
      #security.pam.services.zonsopkomst.enableKwallet = true;
    
    #########
    # Media #
    #########
    #ardour                   # DAW
    bibletime                 # Bible Study Tool
    #blender                  # 3D Animation/Publishing
    calibre                   # eBook Library
    easytag                   # Music Tag Editor
    #foliate                  # eBook Reader
    freetube                  # YouTube Front-End
    #gimp                     # GNU Image Manipulation Program
    gpodder                   # Podcast Manager
    #handbrake                # Video Conversion Tool
    #inkscape                 # Vector Graphics Editor
    libsForQt5.kolourpaint    # Painting Application
    #krita                    # Painting Application
    libsForQt5.k3b            # Disk Burning Application
    #gmic-qt-krita            # Painting Application
    #makemkv                  # Blu-Ray and DVD to MKV Converter
    mpv                       # Media Player
    #nuclear                  # Music Player,
                              # Package not updated
    #obs-studio               # Recording/Streaming Application
    libsForQt5.okular         # Document Viewer
    smplayer                  # Media Player
    strawberry                # Media Player
    #tenacity                 # Sound Editor
    #zotero                   # Research Sourcer
    #hypnotix ??              # IPTV Streaming Application

    ##########
    # Office #
    ##########
    gImageReader              # Tesseract-OCR Front-End
    gnucash                   # Double Entry Accounting Software
                              # Gnucash requires dconf, see Gnome section above
    #obsidian                 # Markdown Editor
    onlyoffice-bin            # Office Suite
    pdfarranger               # PDF Arranger

    ###############################
    # Printers, Copiers, Scanners #
    ###############################
    hplip                             # HP Print Drivers

    ##########
    # System #
    ##########
    # alacritty                       # Terminal Emulator
    appimage-run                      # Appimage Runner
    bleachbit                         # PC Cleaner
    #bottles                          # Wineprefix Manager
    btop                              # Resource Monitor
    cpu-x                             # PC Information
    crow-translate                    # Language Translator
    #genymotion                       # NOTE: Issues with loading
    git                               # Distributed Version Control System
    gsmartcontrol                     # Disk Health Inspection Tool
    htop                              # Process Viewer
    i2c-tools                         # Network Utilities
    inetutils                         # Network Utilities
    keepassxc                         # GUI Password Manager with Cryptography
    #kitty                            # Terminal Emulator
    #openrgb                          # RGB Manager
    neofetch                          # System Information
    #nix-software-center              # Nix Software Center
    nox                               # Nix Tools
    ntfs3g                            # FUSE Client
    p7zip                             # File Archiver
    papirus-icon-theme                # Icons
    powertop                          # Power Manager
    protonup                          # Proton Installer
    #qemu_full                        # Virtual Machine
    solaar                            # Logitech Unifying Receiver
    speedcrunch                       # Calculator
    syncthing                         # File Synchronization
    #syncthing-tray                   # Tray for Syncthing
    tixati                            # Torrent Application
    tldr                              # Simplified man pages
    waydroid                         # Android Emulator
                                      # Only works on wayland
    ventoy-bin                        # USB Boot App
    veracrypt                         # Filesystem Encryption
    #virtualbox                       # Virtual Machine
                                      # Only needed with genymotion
    vscodium                          # Code Editor
    xorg.xkill                        # Kill Windows w/ Mouse
  ];
}



