Compare commits
6 Commits
d5dce97512
...
main
Author | SHA1 | Date | |
---|---|---|---|
0dba0b6943
|
|||
3b81fd3293
|
|||
09385d2e45
|
|||
b92b3e41f2
|
|||
6691dc2b53
|
|||
f194c9cfdc
|
6
flake.lock
generated
6
flake.lock
generated
@@ -347,11 +347,11 @@
|
||||
},
|
||||
"unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1754498491,
|
||||
"narHash": "sha256-erbiH2agUTD0Z30xcVSFcDHzkRvkRXOQ3lb887bcVrs=",
|
||||
"lastModified": 1755615617,
|
||||
"narHash": "sha256-HMwfAJBdrr8wXAkbGhtcby1zGFvs+StOp19xNsbqdOg=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c2ae88e026f9525daf89587f3cbee584b92b6134",
|
||||
"rev": "20075955deac2583bb12f07151c2df830ef346b4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@@ -108,4 +108,63 @@
|
||||
|
||||
'';
|
||||
};
|
||||
|
||||
services.restic.backups = {
|
||||
git-local = {
|
||||
repository = "/mnt/hdd/restic/git";
|
||||
passwordFile = config.sops.secrets.restic-password.path;
|
||||
initialize = true;
|
||||
paths = [ "/var/lib/gitea/repositories" "/var/backup/git" ];
|
||||
backupPrepareCommand = ''
|
||||
mkdir -p /var/backup/git
|
||||
|
||||
${pkgs.sudo}/bin/sudo ${pkgs.systemd}/bin/systemctl stop gitea
|
||||
|
||||
${pkgs.sudo}/bin/sudo -u postgres ${pkgs.postgresql}/bin/pg_dump \
|
||||
--clean \
|
||||
--if-exists \
|
||||
--dbname=git > /var/backup/git/postgres.sql
|
||||
'';
|
||||
backupCleanupCommand = ''
|
||||
${pkgs.sudo}/bin/sudo ${pkgs.systemd}/bin/systemctl start gitea
|
||||
'';
|
||||
};
|
||||
git-remote = {
|
||||
repository = "rest:http://m1:8000/git";
|
||||
passwordFile = config.sops.secrets.restic-password.path;
|
||||
initialize = true;
|
||||
paths = [ "/var/lib/gitea/repositories" "/var/backup/git" ];
|
||||
backupPrepareCommand = ''
|
||||
mkdir -p /var/backup/git
|
||||
|
||||
${pkgs.sudo}/bin/sudo ${pkgs.systemd}/bin/systemctl stop gitea
|
||||
|
||||
${pkgs.sudo}/bin/sudo -u postgres ${pkgs.postgresql}/bin/pg_dump \
|
||||
--clean \
|
||||
--if-exists \
|
||||
--dbname=git > /var/backup/git/postgres.sql
|
||||
'';
|
||||
backupCleanupCommand = ''
|
||||
${pkgs.sudo}/bin/sudo ${pkgs.systemd}/bin/systemctl start gitea
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs;
|
||||
let
|
||||
scripts = with pkgs; {
|
||||
restore_git_pg = writeShellScriptBin "restore_git_pg" ''
|
||||
${pkgs.sudo}/bin/sudo -u postgres psql --dbname=git < /var/backup/git/postgres.sql
|
||||
'';
|
||||
restore_git = writeShellScriptBin "restore_git" ''
|
||||
${pkgs.sudo}/bin/sudo ${pkgs.systemd}/bin/systemctl stop gitea
|
||||
|
||||
${pkgs.sudo}/bin/sudo ${restic}/bin/restic -r /mnt/hdd/restic/git restore latest --target /
|
||||
|
||||
${scripts.restore_git_pg}/bin/restore_git_pg
|
||||
|
||||
${pkgs.sudo}/bin/sudo ${pkgs.systemd}/bin/systemctl start gitea
|
||||
'';
|
||||
};
|
||||
in [ scripts.restore_git_pg scripts.restore_git ];
|
||||
}
|
||||
|
@@ -2,18 +2,40 @@
|
||||
{
|
||||
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
wakapi = prev.wakapi.overrideAttrs (oldAttrs: rec {
|
||||
(final: prev: let
|
||||
version = "2.15.0";
|
||||
in {
|
||||
|
||||
wakapi = (prev.buildGoModule.override { go = prev.go_1_25; }) {
|
||||
pname = "wakapi";
|
||||
version = version;
|
||||
|
||||
src = final.fetchFromGitHub {
|
||||
owner = "k2on";
|
||||
repo = "wakapi";
|
||||
rev = "theming";
|
||||
# hash = "";
|
||||
hash = "sha256-mbQ2cA9tbuDA5OXEP+qVfsrBC90budAzWE7x4oN6ypY=";
|
||||
rev = "koon-fork";
|
||||
hash = "sha256-Gg2YXhPBoIVv+8yV5gz2NTCNFo8V9fNJxqjdkwo6Zf0=";
|
||||
};
|
||||
# vendorHash = final.lib.fakeHash;
|
||||
vendorHash = "sha256-lb6u9NQbB3bizIRbCRaB7Ngv9T5mAYtSl+g13gL7VEU=";
|
||||
});
|
||||
|
||||
vendorHash = "sha256-912x6LwitYXdjWpP75Xoc56JXadeLQZuESSyLoaJcU0=";
|
||||
|
||||
excludedPackages = [ "scripts" ];
|
||||
|
||||
postPatch = ''echo ${version} > version.txt'';
|
||||
|
||||
ldflags = [ "-s" "-w" ];
|
||||
|
||||
passthru = {
|
||||
nixos = prev.nixosTests.wakapi;
|
||||
updateScript = prev.nix-update-script { };
|
||||
};
|
||||
|
||||
meta = prev.wakapi.meta // {
|
||||
version = version;
|
||||
mainProgram = "wakapi";
|
||||
};
|
||||
};
|
||||
|
||||
})
|
||||
];
|
||||
|
||||
|
@@ -5,7 +5,11 @@
|
||||
defaultSopsFile = ../../secrets/sops/host/ark/default.yaml;
|
||||
validateSopsFiles = false;
|
||||
|
||||
age.keyFile = "/var/lib/sops-nix/key.txt";
|
||||
age.keyFile = if builtins.pathExists /var/lib/sops-nix/key.txt then
|
||||
"/var/lib/sops-nix/key.txt"
|
||||
else
|
||||
"/home/admin/.config/sops/age/keys.txt" # temp decrypt key
|
||||
;
|
||||
|
||||
secrets = {
|
||||
"host_age_key" = {
|
||||
|
@@ -1,4 +1,14 @@
|
||||
{ pkgs, config, pkgs-unstable, ... }: {
|
||||
{ pkgs, config, pkgs-unstable, ... }:
|
||||
let
|
||||
openconnect-sso-src = builtins.fetchTree {
|
||||
type = "github";
|
||||
owner = "k2on";
|
||||
repo = "openconnect-sso";
|
||||
rev = "9d4f61e5c8ccca420ffa87d46c96c17d64fbfb0b";
|
||||
narHash = "sha256-ENt4/+9Bll70+BkH0Scej02edLi9SNkvBfyvjxUv83w=";
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../common/core/default.nix
|
||||
@@ -49,22 +59,21 @@
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
|
||||
programs.wireshark.enable = true;
|
||||
programs.adb.enable = true;
|
||||
# programs.adb.enable = true;
|
||||
|
||||
programs.kdeconnect.enable = true;
|
||||
environment.systemPackages = with pkgs; [
|
||||
vim
|
||||
git
|
||||
wget
|
||||
file
|
||||
just
|
||||
|
||||
# mpc
|
||||
gurk-rs
|
||||
libreoffice-qt
|
||||
# ncmpcpp
|
||||
|
||||
brave
|
||||
|
||||
signal-desktop
|
||||
gnupg
|
||||
|
||||
@@ -74,8 +83,6 @@
|
||||
pinentry-curses
|
||||
pinentry-qt
|
||||
|
||||
zathura
|
||||
|
||||
fzf
|
||||
ffmpeg
|
||||
ripgrep
|
||||
@@ -86,6 +93,8 @@
|
||||
libqalculate
|
||||
librespeed-cli
|
||||
|
||||
gparted
|
||||
|
||||
tea
|
||||
|
||||
kubectl
|
||||
@@ -97,11 +106,13 @@
|
||||
gimp
|
||||
inkscape
|
||||
|
||||
wireshark
|
||||
mysql-workbench
|
||||
|
||||
pkgs-unstable.brave
|
||||
# arm support
|
||||
pkgs-unstable.sparrow
|
||||
|
||||
|
||||
(writeShellScriptBin "radio" ''
|
||||
list="
|
||||
WIOP http://s4.yesstreaming.net:7119/;audio.mp3
|
||||
@@ -115,6 +126,8 @@
|
||||
${mpg123}/bin/mpg123 "$url"
|
||||
fi
|
||||
'')
|
||||
|
||||
(pkgs.callPackage "${openconnect-sso-src}/nix" {}).openconnect-sso
|
||||
];
|
||||
|
||||
programs.zsh.enable = true;
|
||||
|
@@ -10,6 +10,7 @@
|
||||
./home/desktop.nix
|
||||
./home/nvim.nix
|
||||
./home/terminal.nix
|
||||
./home/zathura.nix
|
||||
];
|
||||
|
||||
home.username = "max";
|
||||
|
@@ -239,6 +239,7 @@
|
||||
wakatime.enable = true;
|
||||
autoclose.enable = true;
|
||||
ts-autotag.enable = true;
|
||||
bullets.enable = true;
|
||||
spider = {
|
||||
enable = true;
|
||||
extraOptions = {
|
||||
|
10
host/max/home/zathura.nix
Normal file
10
host/max/home/zathura.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{ ... }: {
|
||||
programs.zathura = {
|
||||
enable = true;
|
||||
options = {
|
||||
default-bg = "white";
|
||||
font = "Monocraft";
|
||||
selection-clipboard = "clipboard";
|
||||
};
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user