nixos-config/users/simon/modules/programs.nix

196 lines
5.5 KiB
Nix
Raw Normal View History

{ lib, nixosConfig, pkgs, ... }:
2021-01-01 13:55:47 +01:00
let
waifu2x-photo-models = pkgs.stdenvNoCC.mkDerivation {
2021-01-01 13:55:47 +01:00
name = "waifu2x-photo-models";
src = pkgs.fetchFromGitHub {
owner = "nagadomi";
repo = "waifu2x";
rev = "v0.13.2";
sha256 = "1dqyp1gvw53gs3a1mfylxhj2kghwb3gx1ybsynzbanq84vx6grs2";
};
dontBuild = true;
installPhase = ''
cp -r $src/models/vgg_7/photo $out
'';
2021-01-03 13:03:12 +01:00
meta.license = lib.licenses.mit;
2021-01-01 13:55:47 +01:00
};
# waifu2x-converter-cpp wrapper for real life images
waifu2x-photo = pkgs.writeShellScriptBin "waifu2x-photo" ''
${pkgs.waifu2x-converter-cpp}/bin/waifu2x-converter-cpp \
2021-01-01 13:55:47 +01:00
--model-dir ${waifu2x-photo-models} \
$@
'';
in
{
home.packages = with pkgs; [
# batch processing/automation
parallel # parallel batch processing
yq # sed for yaml
# unix tools on steroids
2021-07-18 22:54:46 +02:00
du-dust # intuitive du
exa # better ls
fd # better find
ripgrep # better grep
# file tools
aria # multithreaded http/ftp/bittorrent download manager
hexyl # user friendly hex file viewer
hyperfine # cli benchmarking
mktorrent # bittorrent seed file generator
2021-12-17 16:08:31 +01:00
qrencode # qr code generator
rclone # rsync for cloud storage
tokei # fast cloc
xdelta # binary diff
# file format tools
imagemagick # image conversion
(p7zip.override { enableUnfree = nixosConfig.sbruder.unfree.allowSoftware; }) # 7z cli (with optional rar support)
pdftk # pdf multitool
# network tools
dnsutils # dig
dogdns # better dig
miniserve # small http server
sshfs # mount remote host
vnstat # client for vnstatd
whois # whois client
zmap # scanner for large address spaces
# system tools
libva-utils # vainfo
# clients
hcloud # cli for Hetzner Cloud
libnotify # notify-send
# function eye candy
pv # monitor progress in pipe
# end user programs
apacheHttpd # for htpasswd
libqalculate # flexible calculator for humans
2021-06-25 22:15:01 +02:00
taskell # tui kanban board
# passwords
2021-04-08 13:36:44 +02:00
mkpasswd # crypt frontend
pwgen
pwgen-secure # password generator
xkcdpass # memorable password generator
# misc
2021-01-07 17:09:22 +01:00
bwrap-helper # helper to create bubblewrap containers
2021-07-25 08:47:59 +02:00
dynamic-colors # on-the-fly color scheme switching
python3Packages.ipython # better python repl (useful for one-liners)
2021-07-25 08:47:59 +02:00
toilet # free figlet
# git
gitAndTools.pre-commit # pre-commit hook for git
# nix tools
2020-12-25 11:42:49 +01:00
nixpkgs-fmt # format nix expressions
2020-12-22 15:25:22 +01:00
nixpkgs-review # review nixpkgs pull request
## media
# audio and video
ffmpeg-full # A/V multitool
mediainfo # show information about media files
streamlink # video stream downloader
waifu2x-converter-cpp # super-resolution for anime-style images
waifu2x-photo # waifu2x-converter-cpp for real life photos
# audio
cyanrip # cd ripper
flac # flac encoder
2021-04-17 23:17:17 +02:00
opusTools # opus encoder
shntool # split audio with cue
sidplayfp # SID chiptune player
sox # “Swiss Army knife of audio manipulation”
# images
exiftool # manipulate EXIF meta data
2021-05-16 17:59:21 +02:00
gallery-dl # image gallery downloader
jpegoptim # lossless jpeg optimiser
libwebp # tools for webp image format
2021-06-02 23:30:16 +02:00
oxipng # lossless png optimiser
pngcrush
pngquant # lossy png optimisers
# documents
mupdf # document (pdf) viewer and tools
2021-01-30 23:27:53 +01:00
poppler_utils # pdf manipulation tools
] ++ lib.optionals (!nixosConfig.sbruder.gui.enable) [
mkvtoolnix-cli # matroska (de-)muxing
] ++ lib.optionals nixosConfig.sbruder.gui.enable [
# communication
claws-mail # email client that looks ugly but just works
firefox-esr # a bad browser
mumble # VoIP group chat
# creative/design
openscad # parametric/procedural 3d modelling
inkscape # vector graphics editor
2020-12-08 18:59:35 +01:00
# audio and video
libbluray # includes command line tools
mkvtoolnix # matroska (de-)muxing with gui
2020-12-08 18:59:35 +01:00
wf-recorder # wlroots screen recorder
# documents
calibre # ebook library
# office
aspellDicts.de
aspellDicts.en
gnome.evince # pdf viewer
2022-05-11 08:44:22 +02:00
gnucash # bookkeeping
hunspellDicts.de-de
hunspellDicts.en-gb-ise # dictionary
libreoffice # office suite
2022-12-02 18:54:51 +01:00
unstable.rnote # notebook
xournalpp # notebook
xsane # scanning tool
# tools
2021-02-27 16:55:18 +01:00
antimicroX # gamepad to keyboard/mouse mapping
filezilla # ftp client
gparted # gui for parted
qalculate-gtk # flexible calculator
2021-12-28 10:31:50 +01:00
remmina # remote desktop client
scrcpy # stream/control android phones over adb
v4l-utils # video4linux configuration
xfce.thunar # graphical file manager
] ++ lib.optionals (nixosConfig.sbruder.full) [
# tools
gdb # debugger (for coredumpctl debug)
gdrive # cli downloader for google drive
] ++ lib.optionals (nixosConfig.sbruder.gui.enable && nixosConfig.sbruder.full) [
# communication
ungoogled-chromium # for most webrtc applications and for cross-browser testing
# creative/design
blender # 3d animation
2022-08-13 17:20:54 +02:00
darktable # raw image processor
gimp-with-plugins # bitmap image editor
# audio
audacity # audio editor
easyeffects # signal processing for pipewire
picard # musicbrainz tagger
# office
jameica # application framework (used for hibiscus online banking)
pdfarranger # pdf multitool
2021-05-13 13:51:06 +02:00
textidote # LaTeX document linter
] ++ lib.optionals (nixosConfig.sbruder.gui.enable && !nixosConfig.sbruder.full) [
# creative/design
gimp # without plugins
] ++ lib.optionals (nixosConfig.sbruder.gui.enable && nixosConfig.virtualisation.libvirtd.enable) [
virt-manager
];
}