nix-files/modules/universal/env/home-packages.nix

114 lines
2.6 KiB
Nix
Raw Normal View History

{ config, lib, pkgs, ... }:
with pkgs;
let
pkgspec = [
backblaze-b2
duplicity
gnupg
ifuse
ipfs
libimobiledevice
lm_sensors # for sensors-detect
networkmanager
nixpkgs-review
# nixos-generators
# nettools
oathToolkit # for oathtool
# ponymix
pulsemixer
python3
rmlint
sane-scripts
sequoia
snapper
sops
ssh-to-age
sudo
wireguard-tools
youtube-dl
]
++ (if config.colinsane.gui.enable then
[
# GUI only
aerc # email client
audacity
chromium
clinfo
electrum
# creds/session keys, etc
{ pkg = element-desktop; dir = ".config/Element"; }
evince # works on phosh
font-manager
gimp # broken on phosh
2022-07-16 06:15:58 +00:00
gnome.cheese
gnome.dconf-editor
gnome-feeds # RSS reader (with claimed mobile support)
gnome.file-roller
2022-07-14 23:22:21 +00:00
gnome.gnome-disk-utility
gnome.gnome-maps # works on phosh
gnome.nautilus
gnome-podcasts
gnome.gnome-terminal # works on phosh
2022-07-12 09:49:02 +00:00
gthumb
inkscape
libreoffice-fresh # XXX colin: maybe don't want this on mobile
logseq
lollypop
mesa-demos
networkmanagerapplet
obsidian
playerctl
tdesktop # broken on phosh
vlc # works on phosh
whalebird # pleroma client. input is broken on phosh
xterm # broken on phosh
] else [])
++ (if config.colinsane.gui.enable && pkgs.system == "x86_64-linux" then
[
# x86_64 only
# creds, but also 200 MB of node modules, etc
{ pkg = discord; dir = ".config/discord"; }
kaiteki # Pleroma client
gnome.zenity # for kaiteki (it will use qarma, kdialog, or zenity)
# actual monero blockchain (not wallet/etc; safe to delete, just slow to regenerate)
{ pkg = monero-gui; dir = ".bitmonero"; }
# creds, media
{ pkg = signal-desktop; dir = ".config/Signal"; }
# creds. TODO: can i manage this with home-manager?
{ pkg = spotify; dir = ".config/spotify"; }
# hardenedMalloc solves a crash at startup
(tor-browser-bundle-bin.override { useHardenedMalloc = false; })
# zcash coins. safe to delete, just slow to regenerate (10-60 minutes)
{ pkg = zecwallet-lite; dir = ".zcash"; }
] else []);
pkglist = builtins.map (e: e.pkg or e) pkgspec;
dirlist = builtins.concatLists (builtins.map (e: if e ? "dir" then [ e.dir ] else []) pkgspec);
in
{
# useful devtools:
# bison
# dtc
# flex
# gcc
# gcc-arm-embedded
# gcc_multi
# gnumake
# mix2nix
# rustup
# swig
colinsane.home-manager.extraPackages = pkglist;
# TODO: this should be gated behind home-manager being enabled...
colinsane.impermanence.home-dirs = dirlist;
}