2022-07-11 00:43:57 +00:00
|
|
|
{ config, lib, pkgs, ... }:
|
2022-07-06 21:35:01 +00:00
|
|
|
|
|
|
|
with pkgs;
|
2022-07-11 00:43:57 +00:00
|
|
|
let
|
|
|
|
pkgspec = [
|
2022-07-11 00:14:20 +00:00
|
|
|
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
|
2022-07-11 00:43:57 +00:00
|
|
|
|
|
|
|
# creds/session keys, etc
|
|
|
|
{ pkg = element-desktop; dir = ".config/Element"; }
|
|
|
|
|
2022-07-11 00:14:20 +00:00
|
|
|
evince # works on phosh
|
|
|
|
font-manager
|
|
|
|
gimp # broken on phosh
|
2022-07-16 06:15:58 +00:00
|
|
|
gnome.cheese
|
2022-07-11 00:14:20 +00:00
|
|
|
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
|
2022-07-11 00:14:20 +00:00
|
|
|
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
|
2022-07-11 00:14:20 +00:00
|
|
|
inkscape
|
|
|
|
libreoffice-fresh # XXX colin: maybe don't want this on mobile
|
2022-07-22 21:12:27 +00:00
|
|
|
logseq
|
2022-07-19 09:18:50 +00:00
|
|
|
lollypop
|
2022-07-11 00:14:20 +00:00
|
|
|
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
|
2022-07-11 00:43:57 +00:00
|
|
|
|
|
|
|
# creds, but also 200 MB of node modules, etc
|
|
|
|
{ pkg = discord; dir = ".config/discord"; }
|
|
|
|
|
2022-07-11 00:14:20 +00:00
|
|
|
kaiteki # Pleroma client
|
|
|
|
gnome.zenity # for kaiteki (it will use qarma, kdialog, or zenity)
|
2022-07-11 00:43:57 +00:00
|
|
|
|
|
|
|
# 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"; }
|
|
|
|
|
2022-07-11 00:14:20 +00:00
|
|
|
# hardenedMalloc solves a crash at startup
|
|
|
|
(tor-browser-bundle-bin.override { useHardenedMalloc = false; })
|
2022-07-11 00:43:57 +00:00
|
|
|
|
|
|
|
# zcash coins. safe to delete, just slow to regenerate (10-60 minutes)
|
|
|
|
{ pkg = zecwallet-lite; dir = ".zcash"; }
|
2022-07-11 00:14:20 +00:00
|
|
|
] else []);
|
2022-07-11 00:43:57 +00:00
|
|
|
|
|
|
|
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;
|
2022-07-11 00:58:16 +00:00
|
|
|
# TODO: this should be gated behind home-manager being enabled...
|
2022-07-11 00:43:57 +00:00
|
|
|
colinsane.impermanence.home-dirs = dirlist;
|
2022-07-11 00:14:20 +00:00
|
|
|
}
|