1
0
mirror of https://github.com/kmein/niveum synced 2026-03-20 12:01:06 +01:00

19 Commits

Author SHA1 Message Date
github-actions[bot]
e6ac020fd2 flake.lock: Update
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/12806d31a381e7cd169a6bac35590e7b36dc5fe5' (2022-05-14)
  → 'github:numtide/flake-utils/04c1b180862888302ddfb2e3ad9eaa63afc60cf8' (2022-05-17)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/79385ae0aacf7e02871cc8af0623123419dd7884' (2022-05-13)
  → 'github:NixOS/nixpkgs/cbd40c72b2603ab54e7208f99f9b35fc158bc009' (2022-05-20)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/437fd89069be470fba34ef7c7f5abc55fe20e328' (2022-05-20)
  → 'github:NixOS/nixpkgs/af0bcde689ed5263e9a0df36116f7583163eb032' (2022-05-22)
• Updated input 'stockholm':
    'git+https://cgit.lassul.us/stockholm?ref=master&rev=c87ba30c0c1cf344c7cc090d73a2ba44140f15d9' (2022-05-11)
  → 'git+https://cgit.lassul.us/stockholm?ref=master&rev=5befc5a6f260e2283863212b39749d5ed05afb63' (2022-05-19)
2022-05-22 00:50:33 +00:00
9a3499ab6c feat(ful): limit to 1 configuration
this circumvents space issues on the /boot partition
2022-05-21 23:07:19 +02:00
92442db877 feat(ful): set root password 2022-05-21 23:06:49 +02:00
d2f85ab972 chore(ful): disable monitoring for now 2022-05-21 23:06:33 +02:00
b593f45ec2 chore(ful): move IP 2022-05-21 23:06:13 +02:00
e9b09a3e67 chore: bye youtube-dl 2022-05-21 23:05:43 +02:00
8c9a44d404 feat(ssh): reach ful, makanek via http first 2022-05-20 23:16:46 +02:00
45fdbad259 chore: update 2022-05-20 23:04:28 +02:00
93b8d31a33 feat: init ful 2022-05-20 23:04:15 +02:00
abb7924fca chore: only one unstable nixpkgs 2022-05-20 23:03:57 +02:00
0c872352e3 feat(hora): auto-update git 2022-05-18 18:11:32 +02:00
31e765da41 fix(geoip-share): really start after geoipupdate 2022-05-18 18:11:13 +02:00
d655faef3e fix(retiolum-map): update 2022-05-18 18:10:57 +02:00
2f5b177158 feat(klem): add avestan 2022-05-18 18:10:37 +02:00
4bc176ea42 fix(unicodmenu): append history 2022-05-17 22:34:30 +02:00
4b63d1b671 feat(hledger): add time tracking tools 2022-05-17 22:34:18 +02:00
dd86c24506 feat(matterbridge): disable, moved to krebs ponte 2022-05-17 22:34:02 +02:00
88c73b23a1 Merge branch 'update_flake_lock_action' 2022-05-15 23:07:03 +02:00
3675ab8161 feat(scripts): remove horoscope 2022-05-15 23:02:42 +02:00
18 changed files with 216 additions and 44 deletions

View File

@@ -30,6 +30,7 @@ in {
tocharian-font = pkgs.callPackage <niveum/packages/tocharian-font.nix> {};
iolanguage = pkgs.callPackage <niveum/packages/iolanguage.nix> {};
ix = pkgs.callPackage <niveum/packages/ix.nix> {};
unstable = import <nixpkgs-unstable> {inherit (config.nixpkgs) config;};
};
};
overlays = [

View File

@@ -1,6 +1,4 @@
{pkgs, ...}: let
nixpkgs-unstable = import <nixpkgs-unstable> {};
in {
{pkgs, ...}: {
nixpkgs.config.joypixels.acceptLicense = true;
fonts = {
enableDefaultFonts = true;
@@ -9,17 +7,17 @@ in {
alegreya
alegreya-sans
amiri
nixpkgs-unstable.annapurna-sil
unstable.annapurna-sil
cantarell-fonts
charis-sil
corefonts
crimson
eb-garamond
etBook
nixpkgs-unstable.ezra-sil
unstable.ezra-sil
fira
font-awesome-ttf
nixpkgs-unstable.galatia-sil
unstable.galatia-sil
gentium
gfs-fonts
gyre-fonts

View File

@@ -5,6 +5,17 @@
}: {
imports = [<niveum/modules/hledger.nix>];
environment.systemPackages = let
timeLedger = "$HOME/projects/ledger/time.timeclock";
in [
(pkgs.writers.writeDashBin "hora-edit" ''
$EDITOR + "${timeLedger}" && ${pkgs.git}/bin/git -C "$(${pkgs.coreutils}/bin/dirname ${timeLedger})" commit --all --message "$(${pkgs.coreutils}/bin/date -Im)"
'')
(pkgs.writers.writeDashBin "hora" ''
${pkgs.hledger}/bin/hledger -f "${timeLedger}" "$@"
'')
];
niveum.hledger = {
enable = true;
ledgerFile = "$HOME/projects/ledger/all.journal";

View File

@@ -34,6 +34,7 @@
"devanagari" = pkgs.writers.writeDash "devanagari" ''
${pkgs.scripts.devanagari}/bin/devanagari
'';
"avesta" = pkgs.writeScript "avesta" (builtins.readFile <niveum/packages/scripts/avesta.sed>);
"curl" = pkgs.writers.writeDash "curl" ''
${pkgs.curl}/bin/curl -fSs "$(${pkgs.coreutils}/bin/cat)"
'';

View File

@@ -8,8 +8,6 @@
menstruation = pkgs.callPackage <menstruation-backend> {};
pandoc-doc = pkgs.callPackage <niveum/packages/man/pandoc.nix> {};
nixpkgs-unstable = import <nixpkgs-unstable> {config.allowUnfree = true;};
zoteroStyle = {
name,
sha256,
@@ -35,7 +33,7 @@
})
];
astrolog = nixpkgs-unstable.astrolog.overrideAttrs (old:
astrolog = pkgs.unstable.astrolog.overrideAttrs (old:
old
// {
installPhase = ''
@@ -124,10 +122,10 @@ in {
electrum
inkscape
astrolog
nixpkgs-unstable.anki # flashcards
unstable.anki # flashcards
jbofihe # lojbanic software
nixpkgs-unstable.zoom-us # video conferencing
nixpkgs-unstable.alejandra # nix formatter
unstable.zoom-us # video conferencing
unstable.alejandra # nix formatter
pdfgrep # search in pdf
pdftk # pdf toolkit
mupdf
@@ -136,7 +134,6 @@ in {
xournalpp # for annotating pdfs
pdfpc # presenter console for pdf slides
hc # print files as qr codes
youtubeDL
yt-dlp
espeak
bc # calculator
@@ -176,7 +173,6 @@ in {
scripts.fkill
scripts.wttr
scripts.unicodmenu
scripts.horoscope
scripts.closest
scripts.trans
scripts.mpv-radio

View File

@@ -25,6 +25,11 @@ in {
port = sshPort;
};
makanek = {
hostname = "88.99.83.173";
user = "root";
port = sshPort;
};
"makanek.r" = {
hostname = "makanek.r";
user = "root";
port = sshPort;
@@ -57,9 +62,15 @@ in {
hostname = "135.181.85.233";
user = "root";
};
oracle = {
hostname = "130.61.171.199";
user = "ubuntu";
"ful.r" = {
hostname = "ful.r";
user = "root";
port = sshPort;
};
ful = {
hostname = "130.61.217.114";
user = "root";
port = sshPort;
};
};
};

View File

@@ -3,7 +3,6 @@
lib,
...
}: let
nixpkgs-unstable = import <nixpkgs-unstable> {};
toSymbols = pkgs.writers.writeDash "to-symbols" ''
${pkgs.gnused}/bin/sed '
s/\bTri\b//;
@@ -50,8 +49,8 @@ in {
now=$(${pkgs.coreutils}/bin/date +%_H:%M | ${pkgs.gnused}/bin/sed 's/^\s*//')
date=$(${pkgs.coreutils}/bin/date +'%m %d %Y')
{
${nixpkgs-unstable.astrolog}/bin/astrolog -qd $date -zN Berlin -Yt -Yd -d -R Uranus Neptune Pluto "North Node"
${nixpkgs-unstable.astrolog}/bin/astrolog -Yt -Yd -q 10 22 1999 6:32 -zN Kassel -td $date -R Uranus Neptune Pluto "North Node"
${pkgs.unstable.astrolog}/bin/astrolog -qd $date -zN Berlin -Yt -Yd -d -R Uranus Neptune Pluto "North Node"
${pkgs.unstable.astrolog}/bin/astrolog -Yt -Yd -q 10 22 1999 6:32 -zN Kassel -td $date -R Uranus Neptune Pluto "North Node"
} | ${toSymbols} | ${pkgs.coreutils}/bin/sort -n | ${pkgs.gnugrep}/bin/grep "^$now" || :
'');
};

38
flake.lock generated
View File

@@ -2,11 +2,11 @@
"nodes": {
"flake-utils": {
"locked": {
"lastModified": 1652557277,
"narHash": "sha256-jSes9DaIVMdmwBB78KkFUVrlDzawmD62vrUg0GS2500=",
"lastModified": 1652776076,
"narHash": "sha256-gzTw/v1vj4dOVbpBSJX4J0DwUR6LIyXo7/SuuTJp1kM=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "12806d31a381e7cd169a6bac35590e7b36dc5fe5",
"rev": "04c1b180862888302ddfb2e3ad9eaa63afc60cf8",
"type": "github"
},
"original": {
@@ -109,11 +109,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1652442528,
"narHash": "sha256-ctD9BdjN7e6cBipm8k9xt+vgwlRApkvuJLSNdaVrphE=",
"lastModified": 1653087707,
"narHash": "sha256-zfno3snrzZTWQ2B7K53QHrGZwrjnJLTRPalymrSsziU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "79385ae0aacf7e02871cc8af0623123419dd7884",
"rev": "cbd40c72b2603ab54e7208f99f9b35fc158bc009",
"type": "github"
},
"original": {
@@ -125,11 +125,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1652576583,
"narHash": "sha256-FhSixtJktylN1lnflPYgZfoH++6/VpC7euoV8RcBKSY=",
"lastModified": 1653180606,
"narHash": "sha256-dYJLG7fgp4/SAhOM5d725KZtCVZuEMS6tSI098n7SA0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e9132b233ec7176c121b4ecb991ce397d92275ee",
"rev": "af0bcde689ed5263e9a0df36116f7583163eb032",
"type": "github"
},
"original": {
@@ -158,11 +158,11 @@
"retiolum": {
"flake": false,
"locked": {
"lastModified": 1652292767,
"narHash": "sha256-3/ENvvvva5BiQH8YP6AHwMpApuut9CqhfjrLaoikcno=",
"lastModified": 1653077783,
"narHash": "sha256-GiL82w4BVSZZV5gIQSoEf+KoJaIkUv+29vZmmWlKb6I=",
"owner": "krebs",
"repo": "retiolum",
"rev": "7cc2a7118e4aa9f5df0953bebad28034306329e6",
"rev": "1b5154c3ed9f3cb751afc3e306a1b20e3358ffe5",
"type": "github"
},
"original": {
@@ -210,11 +210,11 @@
"stockholm": {
"flake": false,
"locked": {
"lastModified": 1652292290,
"narHash": "sha256-QTBV3X6rFHU8H58phKT+V5Trous17aZbSRDB8Yp1i1c=",
"lastModified": 1652980569,
"narHash": "sha256-LJcveSM7m3YBzF7F9jpfQtEbkuHX86QdE0DDdPiX0Yg=",
"ref": "master",
"rev": "c87ba30c0c1cf344c7cc090d73a2ba44140f15d9",
"revCount": 10537,
"rev": "5befc5a6f260e2283863212b39749d5ed05afb63",
"revCount": 10545,
"type": "git",
"url": "https://cgit.lassul.us/stockholm"
},
@@ -242,11 +242,11 @@
"tinc-graph": {
"flake": false,
"locked": {
"lastModified": 1639820904,
"narHash": "sha256-d4s2PulBGIIQXtX7blZz+Wnmij5dK/IrBcilNGjqZC4=",
"lastModified": 1653080212,
"narHash": "sha256-BcfppAuVNp0hMcrMG/ZxE4juSrdQbJSUIA0eHS1/Wxo=",
"owner": "kmein",
"repo": "tinc-graph",
"rev": "1b9c69ffdbdab82d30a23e44f739feea63d94163",
"rev": "ea0ef2e5542684d1d8e34a626cb9295dec33e70d",
"type": "github"
},
"original": {

View File

@@ -119,7 +119,10 @@
type = "app";
program = deployScriptFor {
inherit name;
host = "${name}.r";
host =
if name != "ful"
then "${name}.r"
else "130.61.217.114";
};
};
});

View File

@@ -4,6 +4,11 @@
ipv6 = "42:0:3c46:861f:a118:8e9a:82c9:3d";
};
ful = {
ipv4 = "10.243.2.107";
ipv6 = "42:0:3c46:2c8b:a564:1213:9fb4:1bc4";
};
zaatar = {
ipv4 = "10.243.2.34";
ipv6 = "42:0:3c46:156e:10b6:3bd6:6e82:b2cd";

54
packages/scripts/avesta.sed Executable file
View File

@@ -0,0 +1,54 @@
#!/usr/bin/env -S sed -f
s/ā̊/𐬃/g
s//𐬝/g
s/ṣ̌/𐬴/g
s/š́/𐬳/g
s/ą̄/𐬅/g
s/ŋᵛ/𐬤/g
s/ə̄/𐬇/g
s/ŋ́/𐬣/g
s//𐬒/g
s/xᵛ/𐬓/g
s/a/𐬀/g
s/ā/𐬁/g
s/å/𐬂/g
s/ą/𐬄/g
s/ə/𐬆/g
s/e/𐬈/g
s/ē/𐬉/g
s/o/𐬊/g
s/ō/𐬋/g
s/i/𐬌/g
s/ī/𐬍/g
s/u/𐬎/g
s/ū/𐬏/g
s/k/𐬐/g
s/x/𐬑/g
s/g/𐬔/g
s/ġ/𐬕/g
s/γ/𐬖/g
s/c/𐬗/g
s/j/𐬘/g
s/t/𐬙/g
s/θ/𐬚/g
s/d/𐬛/g
s/δ/𐬜/g
s/p/𐬞/g
s/f/𐬟/g
s/b/𐬠/g
s/β/𐬡/g
s/ŋ/𐬢/g
s/n/𐬥/g
s/ń/𐬦/g
s//𐬧/g
s/m/𐬨/g
s//𐬩/g
s//𐬪/g
s/y/𐬫/g
s/v/𐬬/g
s/r/𐬭/g
s/s/𐬯/g
s/z/𐬰/g
s/š/𐬱/g
s/ž/𐬲/g
s/h/𐬵/g

View File

@@ -77,7 +77,7 @@ in
writers.writeDashBin "unicodmenu" ''
history_file=$HOME/.cache/unicodmenu
PATH=${lib.makeBinPath [coreutils dmenu gnused libnotify xclip xdotool]}
chosen=$(cat "$history_file" ${kaomoji-file} ${unicode-file} | dmenu -p unicode -i -l 10 | tee "$history_file" | sed "s/ .*//")
chosen=$(cat "$history_file" ${kaomoji-file} ${unicode-file} | dmenu -p unicode -i -l 10 | tee --append "$history_file" | sed "s/ .*//")
[ "$chosen" != "" ] || exit

View File

@@ -0,0 +1,48 @@
{
lib,
config,
pkgs,
...
}: let
inherit (import <niveum/lib>) kieran retiolumAddresses;
in {
imports = [
./hardware-configuration.nix
# <niveum/configs/monitoring.nix>
<niveum/configs/nix.nix>
<niveum/configs/save-space.nix>
<niveum/configs/spacetime.nix>
<niveum/configs/sshd.nix>
<niveum/modules/retiolum.nix>
];
nix.nixPath = ["/var/src"];
networking = {
firewall.allowedTCPPorts = [80 443];
hostName = "ful";
interfaces.enp0s3.useDHCP = true;
retiolum = retiolumAddresses.ful;
useDHCP = false;
};
system.stateVersion = "21.11";
services.nginx = {
enable = true;
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;
sslCiphers = "AES256+EECDH:AES256+EDH:!aNULL";
};
security.acme = {
acceptTerms = true;
email = kieran.email;
};
users.users.root.passwordFile = toString <system-secrets/root.password>;
environment.systemPackages = [pkgs.vim pkgs.git pkgs.tmux pkgs.python3];
}

View File

@@ -0,0 +1,41 @@
{
config,
lib,
pkgs,
...
}: {
imports = [<nixpkgs/nixos/modules/profiles/qemu-guest.nix>];
boot = {
loader = {
systemd-boot = {
enable = true;
configurationLimit = 1;
};
efi.canTouchEfiVariables = true;
};
initrd = {
availableKernelModules = ["virtio_pci" "usbhid"];
kernelModules = ["bochs_drm"];
};
kernelModules = [
"console=ttyS0"
"console=tty1"
"nvme.shutdown_timeout=10"
"libiscsi.debug_libiscsi_eh=1"
];
extraModulePackages = [];
};
fileSystems."/" = {
device = "/dev/disk/by-uuid/9bf751c7-cf32-49fb-9354-17694c7a46e0";
fsType = "ext4";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/7817-285D";
fsType = "vfat";
};
swapDevices = [];
}

View File

@@ -62,6 +62,10 @@ in {
useDHCP = false;
};
nixpkgs.config.packageOverrides = pkgs: {
unstable = import <nixpkgs-unstable> {inherit (config.nixpkgs) config;};
};
system.stateVersion = "20.03";
services.nginx = {

View File

@@ -5,7 +5,6 @@
}: let
backupLocation = "/var/lib/codimd-backup";
stateLocation = "/var/lib/codimd/state.sqlite";
nixpkgs-unstable = import <nixpkgs-unstable> {};
domain = "pad.kmein.de";
inherit (import <niveum/lib>) tmpfilesConfig;
in {
@@ -61,7 +60,7 @@ in {
systemd.services.hedgedoc-backup = {
description = "Hedgedoc backup service";
script = ''
${nixpkgs-unstable.sqlite}/bin/sqlite3 -json ${stateLocation} "select shortid, alias, ownerId, content from Notes" \
${pkgs.unstable.sqlite}/bin/sqlite3 -json ${stateLocation} "select shortid, alias, ownerId, content from Notes" \
| ${
pkgs.writers.writePython3 "hedgedoc-json-to-fs.py" {} ''
import json

View File

@@ -4,7 +4,7 @@
...
}: {
services.matterbridge = {
enable = true;
enable = false;
configPath = let
bridgeBotToken = lib.strings.fileContents <system-secrets/telegram/krebs.token>;
in

View File

@@ -57,6 +57,7 @@ in {
systemd.services.geoip-share = {
after = ["geoipupdate.service"];
wantedBy = ["geoipupdate.service"];
script = let
cyberlocker-tools = pkgs.callPackage <stockholm/krebs/5pkgs/simple/cyberlocker-tools> {};
in "${cyberlocker-tools}/bin/cput ${geo-ip-database} < ${geo-ip-database-path}";