1
1
Fork 0
nixos/options/custom/settings/packages.nix
Myned a56408403c
pkgs: add mesa-demos and vulkan-tools
Signed-off-by: Myned <dev@bjork.tech>
2024-12-06 19:44:18 -06:00

213 lines
7.2 KiB
Nix

{
config,
inputs,
lib,
pkgs,
...
}:
with lib; let
cfg = config.custom.settings.packages;
in {
options.custom.settings.packages = {
enable = mkOption {default = false;};
extra = mkOption {default = [];};
};
config = mkIf cfg.enable (
with pkgs; {
environment.systemPackages =
cfg.extra
++ optionals config.custom.default [
### CLI applications
config.boot.kernelPackages.cpupower # Install for current kernel
alejandra # Nix formatter
fd # File finder
fzf # Fuzzy search
jq # JSON parser
killport # Kill processes on port
libqalculate # Calculator
lm_sensors # System sensors
nix-output-monitor # Nix build parser
nix-tree # Nix store explorer
nmap # Network scanner
nvd # Nix diff viewer
progress # Coreutils progress viewer
rclone # File sync
stress # CPU stress tester
trashy # CLI trash
waypipe # Wayland proxy
wl-clipboard # Wayland clipboard
xclip # X11 clipboard
### Dependencies
man-pages
man-pages-posix
]
++ optionals config.custom.minimal [
### GUI applications
kdiskmark # Must be system package for polkit
### CLI applications
mesa-demos # <glx|vk>gears
vulkan-tools # vkcube
# https://github.com/sonic2kk/steamtinkerlaunch
# TODO: Remove when v14 released on nixpkgs
# https://github.com/sonic2kk/steamtinkerlaunch/issues/992
# Build from latest commit
(steamtinkerlaunch.overrideAttrs {src = inputs.steamtinkerlaunch;})
# Dependencies
p7zip # steamtinkerlaunch (Special K)
]
++ optionals config.custom.full [
### GUI applications
amberol # Audio player
apostrophe # Markdown editor
baobab # Disk usage analyzer
blackbox-terminal # Terminal
cartridges # Game library
# BUG: Build failure
# https://github.com/NixOS/nixpkgs/issues/357406
#// cinny-desktop # Matrix client
clapper # Video player
d-spy # D-Bus introspection
dconf-editor # GSettings editor
decibels # Audio player
decoder # QR code scanner
discord # Discord client
drawio # Diagram maker
easyeffects # Audio filters
element-desktop # Matrix client
file-roller # Archive utility
flare-signal # Signal client
fluffychat # Matrix client
footage # Video editor
#// fractal # Matrix client
fragments # Torrent downloader
gcolor3 # Color picker
gitg # Git client
github-desktop # Git client
gnome-boxes # Virtual machine manager
gnome-calculator # Calculator
gnome-calendar # Calendar
gnome-connections # Remote desktop client
gnome-disk-utility # Disk formatter
gnome-firmware # Firmware updater
gnome-font-viewer # Font viewer
gnome-graphs # Data plotter
gnome-maps # OpenStreetMap client
gnome-obfuscate # Image redacter
gnome-podcasts # Podcast feed
gnome-resources # System monitor
gnome-software # Flatpak manager
gnome-system-monitor # System monitor
gnome-text-editor # Text editor
gnome-tweaks # GNOME extras
gnome-usage # System monitor
gradience # GTK theme editor
gtkcord4 # Discord client
gtkterm # Serial terminal
helvum # Pipewire patchbay
heroic # Game library
icon-library # Icon viewer
identity # Compare media
impression # Image writer
kooha # Screen recorder
logseq # Knowledge base
loupe # Image viewer
lutris # Game library
newsflash # RSS feed
nheko # Matrix client
obsidian # Knowledge base
papers # Document viewer
path-of-building # Path of Exile planner
pika-backup # Borg backup manager
planify # Tasks
pods # Podman manager
protonplus # Wine updater
protonvpn-gui # Proton VPN client
ptyxis # Terminal
pwvucontrol # Pipewire volume controller
remmina # Remote desktop client
signal-desktop # Signal client
smile # Emoji picker
snapshot # Camera
snoop # File content finder
spotify # Spotify client
syncthingtray # Syncthing client
tagger # Audio file tagger
telegram-desktop # Telegram client
variety # Wallpaper changer
ventoy # Image writer
virt-viewer # Virtual machine viewer
wildcard # Regex tester
wowup-cf # World of Warcraft addon manager
#// xivlauncher # Final Fantasy XIV launcher
youtube-music # YouTube Music client
zrythm # Digital audio workstation
#!! Must be downloaded manually due to licensing
# (ciscoPacketTracer8.overrideAttrs {
# src = ${config.custom.sync}/linux/config/cisco/CiscoPacketTracer822_amd64_signed.deb;
# })
### CLI applications
inputs.agenix.packages.${system}.default
betterdiscordctl # BetterDiscord installer
bitwarden-cli # Bitwarden client
brightnessctl # Backlight changer
devbox # Development environment
er-patcher # Elden Ring fixes
firefoxpwa # Firefox web apps
glxinfo # Graphics tester
hwloc # CPU topology viewer
freerdp3 # RDP client
grimblast # Screenshots
imagemagick # Image editor
libinput # Libinput commands
libnotify # Notification tester
linux-wifi-hotspot # Wi-Fi hotspot
nixos-anywhere # NixOS installer
nvtopPackages.full # GPU monitor
playerctl # Media controller
satty # Screenshot editor
tio # Serial terminal
usbutils # USB bus utilities
vrrtest # VRR tester
winetricks # Wine modifier
xdg-utils # XDG utilities
ydotool # TODO: Remove when using service
### Dependencies
wineWowPackages.unstableFull # WoW64, not World of Warcraft
# TODO: Use home.gtk.theme.package when fixed upstream
# https://github.com/nix-community/home-manager/issues/5133
adw-gtk3
### Python packages
# https://wiki.nixos.org/wiki/Python#Package_unavailable_in_Nixpkgs
# https://wiki.nixos.org/wiki/Packaging/Python
(python311.withPackages (
ps:
with ps; [
# lifx-cli
# https://github.com/Rawa/lifx-cli
(buildPythonPackage {
pname = "lifx-cli";
version = "master";
src = inputs.lifx-cli;
doCheck = false;
propagatedBuildInputs = with python311Packages; [requests];
})
]
))
];
}
);
}