mio-ops/modules/roles/desktopCraige/default.nix

40 lines
1.5 KiB
Nix

# Craige's addiotnal desktop requirements
{
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.roles.desktopCraige;
in {
options.roles.desktopCraige = {
enable = mkEnableOption "to enable Craige's desktop role.";
};
config = mkIf (cfg.enable) {
environment.systemPackages = with pkgs; [
ffmpeg-full # record, convert and stream audio and video
gimp # The GNU Image Manipulation Program
kdePackages.kasts # Kirigami-based podcast player
mpd # A flexible, powerful daemon for playing music
ncmpcpp # A featureful ncurses based MPD client inspired by ncmpc
nvme-cli # NVM-Express user space tooling for Linux
pandoc # Conversion between documentation formats
pavucontrol # PulseAudio Volume Control
siji # An iconic bitmap font based on Stlarch with additional glyphs
shared-mime-info # A database of common MIME types
shotwell # Photo organizer
sshfs # allows remote filesystems to be mounted over SSH
taskwarrior # Highly flexible command-line tool to manage TODO lists
termonad # Terminal emulator configurable in Haskell
texliveFull # TeX Live environment
tmate # Instant Terminal Sharing
tor-browser-bundle-bin # Tor Browser Bundle built by torproject.org
tuba # Fediverse client
unzip # An extraction utility for archives compressed in .zip format
vcsh # Version Control System for $HOME
yt-dlp # Command-line tool to download videos
];
};
}