2023-09-12 08:44:05 -06:00
|
|
|
{ inputs
|
|
|
|
, config
|
|
|
|
, pkgs
|
|
|
|
, lib
|
2024-02-25 12:16:33 -07:00
|
|
|
, xinlib
|
2023-09-12 08:44:05 -06:00
|
|
|
, ...
|
|
|
|
}:
|
|
|
|
let
|
2024-07-17 07:39:17 -06:00
|
|
|
inherit (inputs.stable.legacyPackages.${pkgs.system}) chirp beets quodlibet-full;
|
2024-04-24 14:29:20 -06:00
|
|
|
inherit (xinlib) jobToUserService prIsOpen;
|
2024-07-08 18:42:57 -06:00
|
|
|
thunderbird = import ../../configs/thunderbird.nix { inherit pkgs; };
|
2023-01-12 08:08:56 -07:00
|
|
|
jobs = [
|
|
|
|
{
|
|
|
|
name = "brain";
|
2023-01-13 07:05:08 -07:00
|
|
|
script = "cd ~/Brain && git sync";
|
2023-01-12 08:08:56 -07:00
|
|
|
startAt = "*:0/2";
|
2023-09-12 08:44:05 -06:00
|
|
|
path = [ pkgs.git pkgs.git-sync ];
|
2023-01-12 08:08:56 -07:00
|
|
|
}
|
|
|
|
{
|
|
|
|
name = "org";
|
2023-01-13 07:05:08 -07:00
|
|
|
script = "(cd ~/org && git sync)";
|
2023-01-12 08:08:56 -07:00
|
|
|
startAt = "*:0/5";
|
2023-09-12 08:44:05 -06:00
|
|
|
path = [ pkgs.git pkgs.git-sync ];
|
2023-01-12 08:08:56 -07:00
|
|
|
}
|
2024-09-08 08:01:30 -06:00
|
|
|
{
|
|
|
|
name = "org-roam";
|
|
|
|
script = "(cd ~/org-roam && git sync)";
|
|
|
|
startAt = "*:0/5";
|
|
|
|
path = [ pkgs.git pkgs.git-sync ];
|
|
|
|
}
|
2023-01-12 08:08:56 -07:00
|
|
|
];
|
2023-09-12 08:44:05 -06:00
|
|
|
in
|
|
|
|
{
|
2022-08-25 12:21:35 -06:00
|
|
|
_module.args.isUnstable = true;
|
|
|
|
|
2023-12-19 11:46:02 -07:00
|
|
|
imports = [ ./hardware-configuration.nix ../../pkgs ];
|
2022-08-25 12:21:35 -06:00
|
|
|
|
|
|
|
sops.secrets = {
|
2024-02-28 09:48:35 -07:00
|
|
|
rkvm_cert = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.qbit;
|
2024-02-28 09:48:35 -07:00
|
|
|
owner = "root";
|
|
|
|
group = "wheel";
|
|
|
|
mode = "400";
|
|
|
|
};
|
|
|
|
rkvm_key = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.qbit;
|
2024-02-28 09:48:35 -07:00
|
|
|
owner = "root";
|
|
|
|
group = "wheel";
|
|
|
|
mode = "400";
|
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
fastmail = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.qbit;
|
2022-08-25 12:21:35 -06:00
|
|
|
owner = "qbit";
|
|
|
|
group = "wheel";
|
|
|
|
mode = "400";
|
|
|
|
};
|
|
|
|
fastmail_user = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.qbit;
|
2022-08-25 12:21:35 -06:00
|
|
|
owner = "qbit";
|
|
|
|
group = "wheel";
|
|
|
|
mode = "400";
|
|
|
|
};
|
|
|
|
nix_review = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.qbit;
|
2022-08-25 12:21:35 -06:00
|
|
|
owner = "qbit";
|
|
|
|
group = "wheel";
|
|
|
|
mode = "400";
|
|
|
|
};
|
2022-10-16 08:19:31 -06:00
|
|
|
netrc = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.qbit;
|
2022-10-16 08:19:31 -06:00
|
|
|
owner = "qbit";
|
|
|
|
group = "wheel";
|
|
|
|
mode = "400";
|
|
|
|
};
|
2023-01-04 18:42:14 -07:00
|
|
|
restic_password_file = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.services;
|
2023-01-04 18:42:14 -07:00
|
|
|
owner = "root";
|
|
|
|
mode = "400";
|
|
|
|
};
|
|
|
|
restic_env_file = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.services;
|
2023-01-04 18:42:14 -07:00
|
|
|
owner = "root";
|
|
|
|
mode = "400";
|
|
|
|
};
|
2023-09-27 20:06:24 -06:00
|
|
|
restic_remote_password_file = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.services;
|
2023-09-27 20:06:24 -06:00
|
|
|
owner = "root";
|
|
|
|
mode = "400";
|
|
|
|
};
|
|
|
|
restic_remote_env_file = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.services;
|
2023-09-27 20:06:24 -06:00
|
|
|
owner = "root";
|
|
|
|
mode = "400";
|
|
|
|
};
|
|
|
|
restic_remote_repo_file = {
|
2024-03-21 22:08:30 -06:00
|
|
|
sopsFile = config.xin-secrets.europa.secrets.services;
|
2023-09-27 20:06:24 -06:00
|
|
|
owner = "root";
|
|
|
|
mode = "400";
|
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
};
|
|
|
|
|
2023-07-16 15:17:03 -06:00
|
|
|
nixpkgs.config = {
|
|
|
|
allowUnfree = true;
|
|
|
|
allowUnsupportedSystem = true;
|
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
|
|
|
|
boot = {
|
2023-09-12 08:44:05 -06:00
|
|
|
binfmt.emulatedSystems = [ "aarch64-linux" "riscv64-linux" ];
|
2022-11-16 20:25:14 -07:00
|
|
|
initrd.systemd.enable = true;
|
2024-04-21 13:45:42 -06:00
|
|
|
initrd.luks.devices."luks-4d7bf115-cdfd-486b-a2fd-ee620d81060c".device = "/dev/disk/by-uuid/4d7bf115-cdfd-486b-a2fd-ee620d81060c";
|
2022-08-25 12:21:35 -06:00
|
|
|
loader = {
|
2024-04-20 18:26:13 -06:00
|
|
|
systemd-boot = {
|
|
|
|
enable = true;
|
|
|
|
memtest86.enable = true;
|
|
|
|
};
|
2022-09-07 10:02:56 -06:00
|
|
|
efi = {
|
|
|
|
canTouchEfiVariables = true;
|
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
};
|
2023-12-14 05:17:07 -07:00
|
|
|
kernelParams = [
|
|
|
|
"boot.shell_on_fail"
|
2024-06-20 17:23:22 -06:00
|
|
|
# https://gitlab.freedesktop.org/upower/power-profiles-daemon#panel-power-savings
|
|
|
|
"amdgpu.abmlevel=0"
|
2023-12-14 05:17:07 -07:00
|
|
|
];
|
2024-08-16 06:59:52 -06:00
|
|
|
kernelPackages = pkgs.linuxPackages_latest;
|
2022-08-25 12:21:35 -06:00
|
|
|
};
|
|
|
|
|
|
|
|
nixManager = {
|
2023-07-05 05:53:26 -06:00
|
|
|
enable = lib.mkDefault true;
|
2022-08-25 12:21:35 -06:00
|
|
|
user = "qbit";
|
|
|
|
};
|
|
|
|
|
2023-07-05 05:53:26 -06:00
|
|
|
kde.enable = lib.mkDefault true;
|
2024-03-15 08:03:56 -06:00
|
|
|
kdeConnect.enable = true;
|
2022-08-25 12:21:35 -06:00
|
|
|
|
2024-08-09 10:35:24 -06:00
|
|
|
virtualisation = {
|
|
|
|
libvirtd.enable = lib.mkDefault true;
|
|
|
|
podman.enable = true;
|
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
|
|
|
|
networking = {
|
|
|
|
hostName = "europa";
|
|
|
|
hostId = "87703c3e";
|
2023-07-09 07:13:33 -06:00
|
|
|
hosts = {
|
2023-09-12 08:44:05 -06:00
|
|
|
"192.168.122.6" = [ "chubs" ];
|
2023-07-09 07:13:33 -06:00
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
wireless.userControlled.enable = true;
|
|
|
|
networkmanager.enable = true;
|
|
|
|
|
|
|
|
firewall = {
|
|
|
|
enable = true;
|
2023-09-12 08:44:05 -06:00
|
|
|
allowedTCPPorts = [ 22 ];
|
2022-08-25 12:21:35 -06:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2022-12-18 06:15:19 -07:00
|
|
|
programs = {
|
2024-07-03 07:33:43 -06:00
|
|
|
nix-ld.enable = lib.mkIf config.programs.ladybird.enable true;
|
2022-12-18 06:15:19 -07:00
|
|
|
steam.enable = true;
|
|
|
|
_1password.enable = true;
|
|
|
|
_1password-gui = {
|
|
|
|
enable = true;
|
2023-09-12 08:44:05 -06:00
|
|
|
polkitPolicyOwners = [ "qbit" ];
|
2022-12-18 06:15:19 -07:00
|
|
|
};
|
|
|
|
dconf.enable = true;
|
2022-12-22 10:09:24 -07:00
|
|
|
zsh = {
|
|
|
|
shellInit = ''
|
|
|
|
export OP_PLUGIN_ALIASES_SOURCED=1
|
|
|
|
'';
|
|
|
|
shellAliases = {
|
|
|
|
"gh" = "op plugin run -- gh";
|
2024-11-08 14:44:48 -07:00
|
|
|
"nixpkgs-review" = "env GITHUB_TOKEN=$(op item get nixpkgs-review --field token --reveal) nixpkgs-review";
|
2023-07-11 09:12:50 -06:00
|
|
|
"godeps" = "go list -m -f '{{if not (or .Indirect .Main)}}{{.Path}}{{end}}' all";
|
2024-04-01 09:03:16 -06:00
|
|
|
"sync-music" = "rsync -av --progress --delete ~/Music/ suah.dev:/var/lib/music/";
|
2024-04-11 12:28:23 -06:00
|
|
|
"load-agent" = ''op item get signer --field 'private key' --reveal | sed '/"/d; s/\r//' | ssh-add -'';
|
2022-12-22 10:09:24 -07:00
|
|
|
};
|
2022-12-18 06:15:19 -07:00
|
|
|
};
|
2024-07-08 18:42:57 -06:00
|
|
|
} // thunderbird.programs;
|
2022-09-08 06:31:34 -06:00
|
|
|
|
2023-09-12 08:44:05 -06:00
|
|
|
services.xinCA = { enable = false; };
|
2023-02-10 12:43:59 -07:00
|
|
|
|
2022-08-25 12:21:35 -06:00
|
|
|
services = {
|
2024-04-24 14:29:20 -06:00
|
|
|
ollama = {
|
2024-05-20 12:11:35 -06:00
|
|
|
enable = false;
|
2024-04-24 14:29:20 -06:00
|
|
|
acceleration = prIsOpen.str 306375 "rocm";
|
|
|
|
};
|
2024-02-28 11:08:31 -07:00
|
|
|
rkvm.server = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
|
|
|
listen = "127.0.0.1:24800";
|
|
|
|
switch-keys = [
|
|
|
|
"caps-lock"
|
|
|
|
"left-alt"
|
|
|
|
];
|
|
|
|
certificate = "${config.sops.secrets.rkvm_cert.path}";
|
|
|
|
key = "${config.sops.secrets.rkvm_key.path}";
|
|
|
|
password = "fake";
|
|
|
|
};
|
|
|
|
};
|
2023-12-18 08:22:02 -07:00
|
|
|
logind = {
|
|
|
|
lidSwitch = "suspend-then-hibernate";
|
|
|
|
lidSwitchExternalPower = "lock";
|
|
|
|
|
|
|
|
extraConfig = ''
|
|
|
|
HandlePowerKey=suspend-then-hibernate
|
|
|
|
HandlePowerKeyLongPress=poweroff
|
|
|
|
IdleAction=suspend-then-hibernate
|
|
|
|
IdleActionSec=300
|
|
|
|
'';
|
|
|
|
};
|
2024-03-24 08:16:57 -06:00
|
|
|
fprintd = {
|
2024-03-27 07:20:54 -06:00
|
|
|
enable = true;
|
2024-03-24 08:16:57 -06:00
|
|
|
};
|
2023-08-15 21:20:35 -06:00
|
|
|
avahi = {
|
|
|
|
enable = true;
|
|
|
|
openFirewall = true;
|
|
|
|
};
|
|
|
|
printing.enable = true;
|
2024-07-31 09:52:49 -06:00
|
|
|
backups =
|
|
|
|
let
|
|
|
|
paths = [ "/home/qbit" "/etc" ];
|
|
|
|
pruneOpts = [ "--keep-hourly 12" "--keep-daily 7" "--keep-weekly 5" "--keep-yearly 4" ];
|
|
|
|
timerConfig = { OnCalendar = "*-*-* 00:30:00"; };
|
|
|
|
in
|
|
|
|
{
|
|
|
|
remote = {
|
|
|
|
enable = true;
|
|
|
|
passwordFile = "${config.sops.secrets.restic_remote_password_file.path}";
|
|
|
|
repositoryFile = "${config.sops.secrets.restic_remote_repo_file.path}";
|
2023-09-27 20:06:24 -06:00
|
|
|
|
2024-07-31 09:52:49 -06:00
|
|
|
# Don't send libvirt over the air-wire
|
|
|
|
inherit paths pruneOpts timerConfig;
|
|
|
|
};
|
|
|
|
local = {
|
|
|
|
enable = true;
|
|
|
|
repository = "/run/media/qbit/backup/${config.networking.hostName}";
|
|
|
|
environmentFile = "${config.sops.secrets.restic_env_file.path}";
|
|
|
|
passwordFile = "${config.sops.secrets.restic_password_file.path}";
|
2023-01-04 18:42:14 -07:00
|
|
|
|
2024-07-31 09:52:49 -06:00
|
|
|
paths = paths ++ [ "/var/lib/libvirt" ];
|
2024-07-31 17:31:53 -06:00
|
|
|
inherit pruneOpts;
|
|
|
|
timerConfig = { OnCalendar = "hourly"; };
|
2023-01-04 18:42:14 -07:00
|
|
|
};
|
2024-07-31 09:52:49 -06:00
|
|
|
};
|
2022-12-27 07:40:02 -07:00
|
|
|
pcscd.enable = true;
|
2022-11-16 21:18:36 -07:00
|
|
|
vnstat.enable = true;
|
2024-11-10 06:52:14 -07:00
|
|
|
clamav.updater.enable = true;
|
2022-08-25 12:21:35 -06:00
|
|
|
tor = {
|
|
|
|
enable = true;
|
|
|
|
client.enable = true;
|
|
|
|
};
|
|
|
|
fwupd = {
|
|
|
|
enable = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
udev.extraRules = ''
|
|
|
|
SUBSYSTEM=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="5bf0", GROUP="users", TAG+="uaccess"
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
2023-07-11 09:12:50 -06:00
|
|
|
security.pki.certificates = [
|
|
|
|
''
|
|
|
|
-----BEGIN CERTIFICATE-----
|
|
|
|
MIIDPTCCAiWgAwIBAgIBATANBgkqhkiG9w0BAQsFADAiMSAwHgYDVQQDExdPYnNp
|
|
|
|
ZGlhbiBMb2NhbCBSRVNUIEFQSTAeFw0yMzAyMDcwMTQ3NDVaFw0yNDAyMDcwMTQ3
|
|
|
|
NDVaMCIxIDAeBgNVBAMTF09ic2lkaWFuIExvY2FsIFJFU1QgQVBJMIIBIjANBgkq
|
|
|
|
hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiRr4708X1QMmQMG3+M7UoefV+9gq+jNR
|
|
|
|
bM5HCOlBuB16LrhRiR/6ROaDnB3OJBP4NToCVY6+tJvWOqJe9FVyzviWzGaFkZGF
|
|
|
|
eBF32QvYLZRbPTIVWADl+KabXm1TXtLos1GpPKnIjU9m+5Jt1ob8i4eTKjjarpSG
|
|
|
|
u4kvKBQiQYxxYXA+miuqxPWD/mkIySvx50EVzrO5X8u/M4MQqPlpMvL6W6AxMXQ+
|
|
|
|
WU5KWUkP3kU/CMB377GjqTfdwRMVqCFhKq0jzFueKrqY0qXnbLoTePFBV2HsPAhv
|
|
|
|
Xup15Yx7G5pLROYkvmxvxzgP6mycB3SOiPDwj9UsFk41+KZV9cm6pQIDAQABo34w
|
|
|
|
fDAMBgNVHRMEBTADAQH/MAsGA1UdDwQEAwIC9DA7BgNVHSUENDAyBggrBgEFBQcD
|
|
|
|
AQYIKwYBBQUHAwIGCCsGAQUFBwMDBggrBgEFBQcDBAYIKwYBBQUHAwgwEQYJYIZI
|
|
|
|
AYb4QgEBBAQDAgD3MA8GA1UdEQQIMAaHBH8AAAEwDQYJKoZIhvcNAQELBQADggEB
|
|
|
|
AHfjsIJpQlQcSP1Gy0gcrnBt9PhcA5TAqKlafKXVs0z60gVFDd/8d9PU3QxuTa4m
|
|
|
|
uQGLtFiMSudaoZoGhyEZ4kk5upqjfANppJj4R5UgPmfhp24AUvPjf2bVXczdIbvY
|
|
|
|
MNrXMtOq4+zD8QdZ25aPXT17LDIGx3TSM4HQzpu9YQdVt6fGgqPKFo3U9HGsBCja
|
|
|
|
lXsQ+lw4Hfi50HqLFRmLA50AP5m+EGdgIkVktAm7v8x0H8wHjd2Ysy8oRRAYtf2i
|
|
|
|
tynaHjsc6x3jDd5HiGuShRNHV9r3Q+IG1+SikALFk0nhKfB4DpYTz/fSQsw9hEj5
|
|
|
|
5wYD1VN/zBzPsHUUwCujYOs=
|
|
|
|
-----END CERTIFICATE-----
|
|
|
|
''
|
|
|
|
];
|
2023-02-06 19:03:49 -07:00
|
|
|
|
2023-09-12 08:44:05 -06:00
|
|
|
systemd = {
|
|
|
|
user.services =
|
2023-12-30 08:31:59 -07:00
|
|
|
lib.listToAttrs (builtins.map jobToUserService jobs);
|
2023-12-18 08:22:02 -07:00
|
|
|
services = {
|
2024-04-24 14:29:20 -06:00
|
|
|
ollama = {
|
|
|
|
environment = {
|
|
|
|
OLLAMA_ORIGINS = "*";
|
|
|
|
};
|
|
|
|
};
|
2023-12-18 08:22:02 -07:00
|
|
|
"whytailscalewhy" = {
|
|
|
|
description = "Tailscale restart on resume";
|
|
|
|
wantedBy = [ "post-resume.target" ];
|
|
|
|
after = [ "post-resume.target" ];
|
|
|
|
script = ''
|
|
|
|
. /etc/profile;
|
|
|
|
${pkgs.systemd}/bin/systemctl restart tailscaled.service
|
|
|
|
'';
|
|
|
|
serviceConfig.Type = "oneshot";
|
|
|
|
};
|
2023-09-12 08:44:05 -06:00
|
|
|
};
|
2023-05-07 06:19:49 -06:00
|
|
|
};
|
2023-01-12 08:08:56 -07:00
|
|
|
|
2023-03-12 09:19:39 -06:00
|
|
|
users.users.qbit.extraGroups = [
|
|
|
|
"dialout"
|
|
|
|
"libvirtd"
|
2023-07-20 13:30:17 -06:00
|
|
|
"plugdev"
|
2024-06-11 08:40:54 -06:00
|
|
|
"cdrom"
|
2023-03-12 09:19:39 -06:00
|
|
|
];
|
2022-08-25 12:21:35 -06:00
|
|
|
|
2023-09-14 07:23:58 -06:00
|
|
|
environment = {
|
|
|
|
sessionVariables = {
|
|
|
|
XDG_BIN_HOME = "\${HOME}/.local/bin";
|
|
|
|
XDG_CACHE_HOME = "\${HOME}/.cache";
|
|
|
|
XDG_CONFIG_HOME = "\${HOME}/.config";
|
|
|
|
XDG_DATA_HOME = "\${HOME}/.local/share";
|
2022-12-04 06:22:35 -07:00
|
|
|
|
2023-09-14 07:23:58 -06:00
|
|
|
STEAM_EXTRA_COMPAT_TOOLS_PATHS = "\${HOME}/.steam/root/compatibilitytools.d";
|
|
|
|
PATH = [ "\${XDG_BIN_HOME}" ];
|
|
|
|
MUHOME = "\${HOME}/.config/mu";
|
|
|
|
};
|
2022-12-04 06:22:35 -07:00
|
|
|
|
2023-09-14 07:23:58 -06:00
|
|
|
systemPackages = with pkgs; [
|
2024-07-17 07:39:17 -06:00
|
|
|
#deltachat-desktop
|
2023-12-12 05:47:53 -07:00
|
|
|
arduino
|
2023-12-18 08:19:54 -07:00
|
|
|
beets # stable
|
2023-09-14 07:23:58 -06:00
|
|
|
calibre
|
2023-12-18 08:19:54 -07:00
|
|
|
chirp # stable
|
2024-07-17 07:39:17 -06:00
|
|
|
deadbeef-with-plugins
|
2024-03-09 20:54:03 -07:00
|
|
|
deluge
|
2024-09-10 20:17:02 -06:00
|
|
|
dino
|
2023-09-14 07:23:58 -06:00
|
|
|
direwolf
|
|
|
|
element-desktop
|
2024-07-09 12:46:46 -06:00
|
|
|
element-desktop-wayland
|
2023-09-14 07:23:58 -06:00
|
|
|
elmPackages.elm
|
|
|
|
elmPackages.elm-format
|
|
|
|
elmPackages.elm-language-server
|
|
|
|
elmPackages.elm-live
|
|
|
|
elmPackages.elm-test
|
|
|
|
entr
|
2024-07-02 15:18:01 -06:00
|
|
|
ferdium
|
2023-12-21 08:05:16 -07:00
|
|
|
fossil
|
2023-09-14 07:23:58 -06:00
|
|
|
gh
|
|
|
|
gimp
|
2024-03-14 06:08:39 -06:00
|
|
|
git-annex
|
2024-01-17 08:38:48 -07:00
|
|
|
gqrx
|
2023-09-14 07:23:58 -06:00
|
|
|
hackrf
|
2024-03-18 13:35:11 -06:00
|
|
|
inkscape
|
2024-08-09 07:59:44 -06:00
|
|
|
intiface-central
|
2024-05-24 11:15:37 -06:00
|
|
|
isync
|
2024-03-22 08:26:09 -06:00
|
|
|
jan
|
2024-03-18 13:35:11 -06:00
|
|
|
jujutsu
|
2023-09-14 07:23:58 -06:00
|
|
|
klavaro
|
2024-03-26 08:12:45 -06:00
|
|
|
koreader
|
2024-06-17 09:29:13 -06:00
|
|
|
linphone
|
2024-07-09 20:43:09 -06:00
|
|
|
ltunify
|
2023-09-14 07:23:58 -06:00
|
|
|
minicom
|
2024-05-24 11:15:37 -06:00
|
|
|
mu
|
2023-09-14 07:23:58 -06:00
|
|
|
nix-index
|
2023-11-14 07:08:36 -07:00
|
|
|
nixpkgs-review
|
2023-09-14 07:23:58 -06:00
|
|
|
nmap
|
2023-12-18 11:32:45 -07:00
|
|
|
obsidian
|
2024-04-24 14:29:20 -06:00
|
|
|
ollama
|
2024-03-07 08:02:40 -07:00
|
|
|
openscad
|
2023-09-14 07:23:58 -06:00
|
|
|
picocom
|
|
|
|
proton-caller
|
|
|
|
protonup-ng
|
|
|
|
prusa-slicer
|
2024-01-11 20:05:57 -07:00
|
|
|
python3Packages.nomadnet
|
2024-01-12 17:07:08 -07:00
|
|
|
python3Packages.rns
|
2023-09-14 07:23:58 -06:00
|
|
|
qdmr
|
2024-07-17 07:39:17 -06:00
|
|
|
# Don't do it, don't switch to another music player. They all suck!
|
|
|
|
# this one works the least sucky!
|
|
|
|
quodlibet-full #stable
|
|
|
|
# Don't do it! ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
#
|
2023-09-14 07:23:58 -06:00
|
|
|
rex
|
2023-11-29 08:10:15 -07:00
|
|
|
rsibreak
|
2023-09-14 07:23:58 -06:00
|
|
|
rtl-sdr
|
|
|
|
sdrpp
|
|
|
|
signal-desktop
|
|
|
|
tcpdump
|
|
|
|
tea
|
|
|
|
tigervnc
|
2024-01-30 12:47:55 -07:00
|
|
|
tncattach
|
2023-09-14 07:23:58 -06:00
|
|
|
unzip
|
|
|
|
veilid
|
|
|
|
virt-manager
|
|
|
|
w3m
|
2024-05-15 09:37:11 -06:00
|
|
|
workrave
|
2023-09-14 07:23:58 -06:00
|
|
|
yt-dlp
|
|
|
|
zig
|
2022-09-21 13:07:37 -06:00
|
|
|
|
2024-01-17 08:38:48 -07:00
|
|
|
(callPackage ../../pkgs/ttfs.nix { })
|
2024-11-02 10:07:11 -06:00
|
|
|
(python3Packages.callPackage ../../pkgs/kobuddy.nix { })
|
2023-09-14 07:23:58 -06:00
|
|
|
(callPackage ../../pkgs/gokrazy.nix { })
|
2024-08-29 07:34:55 -06:00
|
|
|
(callPackage ../../pkgs/mvoice.nix { })
|
2023-09-14 07:23:58 -06:00
|
|
|
(callPackage ../../pkgs/zutty.nix { })
|
2024-11-08 14:44:48 -07:00
|
|
|
(python3Packages.callPackage ../../pkgs/watchmap.nix { })
|
2024-07-24 08:19:37 -06:00
|
|
|
(python3Packages.callPackage ../../pkgs/ble-serial.nix { })
|
2024-11-17 06:45:40 -07:00
|
|
|
(tclPackages.callPackage ../../pkgs/irken.nix { })
|
2023-04-17 10:43:10 -06:00
|
|
|
|
2023-09-14 07:23:58 -06:00
|
|
|
restic
|
|
|
|
];
|
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
|
2022-09-21 08:00:54 -06:00
|
|
|
# for Pharo
|
|
|
|
security.pam.loginLimits = [
|
|
|
|
{
|
|
|
|
domain = "qbit";
|
|
|
|
type = "hard";
|
|
|
|
item = "rtprio";
|
|
|
|
value = "2";
|
|
|
|
}
|
|
|
|
{
|
|
|
|
domain = "qbit";
|
|
|
|
type = "soft";
|
|
|
|
item = "rtprio";
|
|
|
|
value = "2";
|
|
|
|
}
|
|
|
|
];
|
|
|
|
|
2023-09-12 08:44:05 -06:00
|
|
|
system = {
|
|
|
|
autoUpgrade.allowReboot = false;
|
|
|
|
stateVersion = "21.11";
|
|
|
|
};
|
2022-08-25 12:21:35 -06:00
|
|
|
}
|