refactor: delete crumb
build / build (push) Successful in 1m31s

This commit is contained in:
2026-08-29 02:05:58 -06:00
parent bc8b56671a
commit 1b4f2d695f
132 changed files with 71 additions and 6736 deletions
-82
View File
@@ -1,82 +0,0 @@
{
systemConfiguration = { config, ... }: {
isNormalUser = true;
# TODO: Don't hard-code `persist`. Use
# config.sydnix.impermanence.persistGroupName.
extraGroups = [ "wheel" "persist" "input" "networkmanager" "dots" "docker" ];
initialHashedPassword =
"$y$j9T$aEFDDwdTZbAc6VQRXrkBJ0$K8wxTGTWDihyX1wxJ.ZMH//wmQFfrGGUkLkxIU0Lyq8";
openssh.authorizedKeys.keyFiles = [
../../public-keys/ssh/crumb-at-guix-rebound.pub
];
};
homeConfiguration = { config, lib, pkgs, ... }: {
imports = [
./files.nix
];
home.packages = [
(pkgs.stdenv.mkDerivation rec {
pname = "berkeley-mono";
version = "2.002";
src = pkgs.fetchzip {
url = "https://deertopia.net/~msyds/berkeley-mono-${version}.zip";
hash = "sha256-o/G9+IXTGrr0lMLiq13nhIKZ2NfXkR6wd72W+d7Stqw=";
stripRoot = false;
};
installPhase = ''
mkdir -p $out/share/fonts/truetype/berkeley-mono
cp -r *.ttf $out/share/fonts/truetype/berkeley-mono
'';
})
pkgs.noto-fonts-cjk-sans
];
sydnix = {
gpg.enable = true;
zotero.enable = true;
drawing-tablet.enable = true;
capitaine-cursors.enable = true;
xdg.enable = true;
slippi.enable = true;
openutau.enable = true;
steam.enable = true;
flatpak.enable = true;
sops = {
enable = true;
keyFile = "/persist/private-keys/age/${config.home.username}";
};
# Personal configurations.
users.crumb = {
anki.enable = true;
age.enable = true;
rnote.enable = true;
default-applications.enable = true;
fcitx5.enable = true;
bash.enable = true;
direnv.enable = true;
firefox.enable = true;
git.enable = true;
haskell.enable = true;
mpd.enable = true;
nvim.enable = true;
emacs.enable = true;
niri.enable = true;
waybar.enable = true;
discord.enable = true;
ghostty.enable = true;
readline.enable = true;
mumble.enable = true;
tf2.enable = true;
quake-live.enable = true;
};
};
# Don't touch!
home.stateVersion = "18.09";
};
}
-87
View File
@@ -1,87 +0,0 @@
{ config, lib, pkgs, ... }:
let mutableSymlink = config.lib.file.mkOutOfStoreSymlink;
in lib.mkMerge [
{
# Link private SSH keys to ~/.ssh/id_ed25519 (where SSH will automatically
# find them) and ~/private-keys (where humans will find them). Remember
# that private keys must always be linked with mutable symlinks as to not
# copy them into the world-readable Nix store!!
# home.file.".ssh/id_ed25519".source =
# mutableSymlink "/persist/private-keys/ssh/crumb-at-nixos-testbed";
# home.file."private-keys/ssh/crumb-at-nixos-testbed".source =
# mutableSymlink "/persist/private-keys/ssh/crumb-at-nixos-testbed";
home.file.".ssh/id_ed25519".source =
mutableSymlink "/persist/private-keys/ssh/msyds-old";
home.file."private-keys/ssh/msyds-old".source =
mutableSymlink "/persist/private-keys/ssh/msyds-old";
# Similarly, public keys are linked where SSH will find them as well as a
# human-friendly ~/public-keys.
# home.file.".ssh/id_ed25519.pub".source =
# ../../public-keys/ssh/crumb-at-nixos-testbed.pub;
# home.file."public-keys/ssh/crumb-at-nixos-testbed".source =
# ../../public-keys/ssh/crumb-at-nixos-testbed.pub;
home.file.".ssh/id_ed25519.pub".source =
../../public-keys/ssh/msyds-old.pub;
home.file."public-keys/ssh/msyds-old".source =
../../public-keys/ssh/msyds-old.pub;
}
{
### Some basic impermanence setup.
sydnix.impermanence = {
enable = true;
directories = [
".wine"
"Music"
"Pictures"
"Documents"
"Videos"
"Games"
"src" # My projects.
"scratch" # My playgrounds.
"etc" # Miscellaneous belongings.
"git" # Other peoples' projects.
# Should "org" be declared in emacs.nix? I don't think so. I
# conjecture that my org files are extremely valuable with or without
# Emacs.
"org"
# REVIEW: I think it may be preferable to persist a few individual files
# under ~/.ssh, rather than the whole directory.
".ssh"
];
};
}
{
### Syncthing
sydnix.syncthing = {
enable = true;
includeDevices = [
"guix-rebound"
"deertopia"
];
directories = {
"org" = {
path = "~/org";
devices = [
"guix-rebound"
"deertopia"
];
ignorePerms = true;
};
# "Music" = {
# path = "~/Music";
# devices = [
# "deertopia"
# ];
# ignorePerms = true;
# };
};
};
}
]
-34
View File
@@ -1,34 +0,0 @@
lastfm-password: ENC[AES256_GCM,data:gLcWwEFLhlVdMWez5Kaja17WFUA=,iv:KT9JO0823dn6qHnK2uOacMxHf4f776/soXFUVjUi1UA=,tag:n77bHc97yoKJPYvTCWhEuQ==,type:str]
librefm-password: ENC[AES256_GCM,data:0gDlWC/2CxryI6jH5RuJ,iv:8QVnhLko3H/IupQrNknxTR8NewfTP+DJyzvHk9Hzr48=,tag:Ku02Jp7p5G5qkO41Y3EFwA==,type:str]
github-oauth: ENC[AES256_GCM,data:t3FKFYu8edeBipC55nrG0lt1SCY8q1N5dZmvsCg7GLlVl4oDXW8FyQ==,iv:aewQ63H6c5wAw+YQRKbDT18Q05hSFsrdQBSYOUeVNeY=,tag:m1oCnSmLt+0rfcfSO4sOkQ==,type:str]
gitlab-oauth: ENC[AES256_GCM,data:1THznoGRZmq7BkisZoGa0ZiPG7aSmkV06SY=,iv:Gq6UPHBBrnpkiAo4CZipc89kJ9mfJrwIp9NmUmjtKBo=,tag:UhvgCQlnkTEQ4hEbCTM6ow==,type:str]
#ENC[AES256_GCM,data:gp4X7mrNC4ZdlyyUUWjsUjvhmlvyHhQ=,iv:NK9hr5KcIQ6z7B+TqOfiGX5Pfd8SQUaSJdj9Hy4d/WQ=,tag:HBzhJ9PeQCghB+3NfnW6Hg==,type:comment]
#
#ENC[AES256_GCM,data:4gqfnzA4eoeZ6Iw9fCT3I7KhkYxsff7myCdTVulKx4x8H6+nhCg=,iv:FC64RlxezPMOH9sKrBdzhbCcdNUIJwi0oFjNdC5F3yQ=,tag:+9/+CVNCIjSMoXlGyMMNUw==,type:comment]
#ENC[AES256_GCM,data:oevqzjP/OMnJeTIRcMDDhwMg95gzLINr4b0PdBPuFNRXxZ5izji6dUIKxTRH,iv:FyI9fmAV0ZX8CRu/ULbJXgzt0wO6zpgB0r63BU3ZqzE=,tag:wwmk0EldIsOlgRJN0tc+/g==,type:comment]
#
#ENC[AES256_GCM,data:SjMRkN3U2imOARN6Ecxfvy86/4/8+hJY/SmIbLbvDX/nLbRaxnkyIWvyTiM0NZxWR05rMSn4ZQ==,iv:fp/mrh9tAHhcfgWoUyYD0DQmdCU3BKB3Yy7Z164KTao=,tag:I0JlYWDNo4N0F4Xeq2c2Lw==,type:comment]
#ENC[AES256_GCM,data:s5QQ9+f317sUC8y4gfRv1/tY40iXWzjn/bvOw7VAN8LDB75wrNWLf0Lawxhki1k=,iv:2rMAzgalNRvzyjWdMpCBXAaUYQS8N9u87YgF+IdwFp0=,tag:1aOr5BzSPlVrQhdrNMmMBQ==,type:comment]
#ENC[AES256_GCM,data:N/g9x/bk3UIP9n0bH0q+UAzmacXw7FpfkOdXnstmXovXuN8RHnnTmmim/hL9Rb/KiWFdo0GlNHBC02KdYpXmJRXAJA4=,iv:JzJFKQKI69wg01HxRc1ZolVF1vnQ/X8AK3y/JEUVQr4=,tag:V7wYLrdh20M8pdpiKGmGLQ==,type:comment]
#ENC[AES256_GCM,data:cRJoSlwZ5uW/LP3AymRffpglasTQfG1I4rFnonOdHw==,iv:IJU4HedL29CCUdYemkmi/wSzAqcMN1nDpz3NH6/bxPI=,tag:cjPbOssoGwLmbluzA28pUg==,type:comment]
#ENC[AES256_GCM,data:RCya+rRxVH/LYKH2iltTwHBhsrQ0DqpXgAPzoYfFBFDiqL6/Rvhpd5vcFosPawZAow==,iv:AZMaEhKqXm/0/U76KZBAZhm6Rt8A7o41cBsk7bGD/Ac=,tag:62figByLcuK4kywPI/fhLg==,type:comment]
#ENC[AES256_GCM,data:yTYbyB0b06mWCcstfnexBIe4WGS/SLlcbbNgtWKPwiMlOCO7fe+448VpoDJPftse3FI=,iv:RP4DJCrUyNUbgrZGQLYn3ANqEDO+uWe1aeKVqCRwpws=,tag:iqnRsAAJ//8iVzZdi2CcRw==,type:comment]
#
anki-username: ENC[AES256_GCM,data:hYOu21g=,iv:PY3RmCME8xPEjiva56sGGFTpDnXDn2tOYEE0VugnNaU=,tag:OvMMhFF2W5+82vlDgKCLiA==,type:str]
anki-password: ENC[AES256_GCM,data:dzK6C4AtkkBSBctDHU6G8ajT8A==,iv:ok2C5mkCF0ufOGO/BeHgcQjh9Z3PAka10kPFp5ifTH4=,tag:Ww5gJVDkNa1locFgJjGDIQ==,type:str]
anki-sync-key: ENC[AES256_GCM,data:3gID2PQy0BM7xb6hFQImTob7tlVXK835McYMSjyXsW1DrlYGTJU+cg==,iv:ZjFDb2OA7+UHATwdBKCy6O9htA4agIhJsydG4Oe6b1I=,tag:o/g6z5Ns9tuwRYBb7aYaGw==,type:str]
sops:
age:
- recipient: age1qayk0d0f765v57pedm7mtau6qkmv8rh6jtaqm40g5g9armaty4jqc0v0y2
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA2NE5mTER1OXpadmNzaXV6
b3RSbS9yWTN0NWR4Z2xBRnRSanQxYXdRT2drClVrSk1raXE4ZUVIVmxoMzJWU1Rj
VmxzdnVSUVEvQk1JcFo4Qjh6YWhiME0KLS0tIHh1OCtzSUZpWWhrbXB4SlA4RVBs
VVBqSEM2bVFBU0M5YzZBQWIwUmVXUXMKvWb57Rc+rO5M8Pf7lvbSjuZB4FrHgT3A
uBQHH3wpv0BVVzL8tucPnwNxDnwpWvFxxwNVy/rtfs6y6HPu6fuOsA==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2025-10-30T22:13:31Z"
mac: ENC[AES256_GCM,data:IdcHI68ZhvxGF3meROR5X429l3O1c9hyKLtwM4JFlK98sxN2Cl1XrAate74hYugwZUWu2Y2oo/+F7AEf1XyCj0bdtSulc8kDdn1Q3xU/W2FXW70uCTzEKnvD152/ifk1jYrPhcg4TvT4geva9iVD6FU3z0JuW345urCacEO7mZ4=,iv:bebniWdbTjhETYYzABIpbGjnzJqjvIvrKxSqMEuPGEU=,tag:BdMss9CVVuK68Wm5fjODAA==,type:str]
unencrypted_suffix: _unencrypted
version: 3.10.2
+2 -2
View File
@@ -60,8 +60,8 @@
".ssh"
];
};
users.crumb.git.enable = true;
users.crumb.nvim.enable = true;
users.msyds.git.enable = true;
users.msyds.nvim.enable = true;
};
# Don't touch!
-28
View File
@@ -1,28 +0,0 @@
{
systemConfiguration = { config, ... }: {
isNormalUser = true;
# Unfortunately must be hard-coded so we can attribute it to the
# corresponding LDAP user.
uid = 1007;
extraGroups = [ "www" ];
openssh.authorizedKeys.keyFiles = [
../../public-keys/ssh/liv.pub
../../public-keys/ssh/windows.pub
];
};
homeConfiguration = { config, lib, pkgs, ... }: {
programs.bash.enable = true;
programs.emacs.enable = true;
home.packages = [
pkgs.nano
];
# Don't touch!
home.stateVersion = "18.09";
};
}
+11 -13
View File
@@ -61,7 +61,17 @@
keyFile = "/persist/private-keys/age/crumb";
};
# Personal configurations.
users.crumb = {
users.msyds = {
discord.enable = true;
bash.enable = true;
hunspell.enable = true;
emacs.enable = true;
impermanence.enable = true;
syncthing.enable = true;
fonts.enable = true;
dank-material-shell.enable = true;
sioyek.enable = on "fruitbook";
zathura.enable = on "sydpc";
direnv.enable = true;
git.enable = true;
nvim.enable = true;
@@ -76,18 +86,6 @@
mumble.enable = true;
rnote.enable = on "sydpc";
};
users.msyds = {
discord.enable = true;
bash.enable = true;
hunspell.enable = true;
emacs.enable = true;
impermanence.enable = true;
syncthing.enable = true;
fonts.enable = true;
dank-material-shell.enable = true;
sioyek.enable = on "fruitbook";
zathura.enable = on "sydpc";
};
};
# Don't touch!