Compare commits

..

2 commits

Author SHA1 Message Date
2ce900c1c8 flake update 2024-12-19 22:14:28 -05:00
fae126b438 add backup job 2024-12-19 22:14:28 -05:00
3 changed files with 46 additions and 6 deletions

39
backup.nix Normal file
View file

@ -0,0 +1,39 @@
{ config, pkgs, ... }:
let
user = "misskey-backup";
group = user;
# shell script file to be sourced. must have values "bucket" "prefix" and "s3cfg"
backupConfigFile = "/etc/misskey-backup";
backupScript = pkgs.writeShellApplication {
name = "misskey-backup";
runtimeInputs = with pkgs; [
gzip
config.services.postgresql.package
s3cmd
coreutils
];
text = ''
source "${backupConfigFile}"
pg_dump misskey | gzip | s3cmd put --config "$s3cfg" - "s3://$bucket/$prefix/misskey-pgdump-$(date --iso-8601).sql.gz"
'';
};
in {
users.users."${user}" = {
isSystemUser = true;
inherit group;
};
users.groups."${group}" = { };
services.postgresql.ensureUsers = [{ name = user; }];
services.cron = {
enable = true;
systemCronJobs = [
# run every monday at ass in the morning, EST"
"0 8 0 0 1 ${user} ${backupScript}"
];
};
}

View file

@ -6,6 +6,7 @@
./ogdo.nix
./postfix.nix
./nebula.nix
./backup.nix
];
nix.settings = {

12
flake.lock generated
View file

@ -2,11 +2,11 @@
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1728328465,
"narHash": "sha256-a0a0M1TmXMK34y3M0cugsmpJ4FJPT/xsblhpiiX1CXo=",
"lastModified": 1734529975,
"narHash": "sha256-ze3IJksru9dN0keqUxY0WNf8xrwfs8Ty/z9v/keyBbg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1bfbbbe5bbf888d675397c66bfdb275d0b99361c",
"rev": "72d11d40b9878a67c38f003c240c2d2e1811e72a",
"type": "github"
},
"original": {
@ -24,11 +24,11 @@
},
"unstable": {
"locked": {
"lastModified": 1728241625,
"narHash": "sha256-yumd4fBc/hi8a9QgA9IT8vlQuLZ2oqhkJXHPKxH/tRw=",
"lastModified": 1734424634,
"narHash": "sha256-cHar1vqHOOyC7f1+tVycPoWTfKIaqkoe1Q6TnKzuti4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c31898adf5a8ed202ce5bea9f347b1c6871f32d1",
"rev": "d3c42f187194c26d9f0309a8ecc469d6c878ce33",
"type": "github"
},
"original": {