Skip to content

Commit 1545a0d

Browse files
committed
add new services
1 parent ca75aeb commit 1545a0d

File tree

13 files changed

+132
-47
lines changed

13 files changed

+132
-47
lines changed

modules/nixos/class-laptop/network.nix

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,9 @@
88
};
99
};
1010

11-
services.avahi.enable = true;
11+
services = {
12+
avahi.enable = true;
13+
mullvad-vpn.enable = true;
14+
jellyfin.enable = true;
15+
};
1216
}

modules/nixos/common/impermanence.nix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
directories = [
1515
"/etc/nixos" # our config
1616
"/etc/NetworkManager/system-connections" # network manager connections
17+
"/etc/mullvad-vpn" # mullvad state
1718
"/var/lib/bluetooth" # blueman connections
1819
"/var/lib/nixos" # uid and gid mappings
1920
"/var/log" # logs

modules/nixos/service-caddy.nix

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
1-
{
2-
lib,
3-
config,
4-
hostName,
5-
...
6-
}: {
1+
{hostName, ...}: {
72
services.caddy = {
83
enable = true;
94
globalConfig = ''

modules/nixos/service-jellyfin.nix

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{...}: {
2+
services = {
3+
jellyfin.enable = true;
4+
5+
caddy.virtualHosts."jellyfin.danieln.de".extraConfig = ''
6+
reverse_proxy localhost:8096
7+
'';
8+
};
9+
10+
environment.persistence."/nix/persist" = {
11+
directories = [
12+
"/var/lib/jellyfin"
13+
];
14+
};
15+
}

modules/nixos/service-rqbit.nix

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
{
2+
config,
3+
pkgs,
4+
...
5+
}: {
6+
networking.wg-quick.interfaces.mullvad.configFile = "${config.age.secrets.mullvad-conf.path}";
7+
age.secrets.mullvad-conf.file = ../../../secrets/mullvad.conf.age;
8+
9+
nixpkgs.overlays = [
10+
(self: super: {
11+
rqbit = super.rqbit.overrideAttrs (old: rec {
12+
version = "9.0.0-main";
13+
src = pkgs.fetchFromGitHub {
14+
owner = "ikatson";
15+
repo = "rqbit";
16+
rev = "62a9b624ad7da4d8af3abb9c7feb23a0c915adba";
17+
hash = "sha256-nNiBHH7obF4mhZLjlzXfMpejC4+Qleyk7Zy9iWGeZHw=";
18+
};
19+
cargoDeps = self.rustPlatform.fetchCargoVendor {
20+
inherit src;
21+
hash = "sha256-cy8buot0HKRpGKECaQC+8v7P4B+Y0IfKdFOmNIoA8UI=";
22+
};
23+
});
24+
})
25+
];
26+
environment. systemPackages = with pkgs; [
27+
rqbit
28+
];
29+
30+
systemd.services.rqbit = {
31+
requires = ["wg-quick-mullvad.service"];
32+
wantedBy = ["multi-user.target"];
33+
path = with pkgs; [
34+
rqbit
35+
];
36+
serviceConfig = {
37+
Description = "Run rqbit download manager.";
38+
Type = "simple";
39+
User = "danieln";
40+
ExecStart = "${pkgs.rqbit}/bin/rqbit --bind-device=mullvad --disable-upnp-port-forward --disable-lsd server start /home/danieln/downloads";
41+
};
42+
};
43+
44+
environment.persistence."/nix/persist".users.danieln = {
45+
directories = [
46+
".local/share/com.rqbit.session"
47+
];
48+
};
49+
50+
services.caddy.virtualHosts."dl.danieln.de".extraConfig = ''
51+
basicauth * {
52+
danieln $2a$14$BHCi0dM1slv2JypVYffCZ.LAbPH8x3037LwVlRaxySIppSPR1Ixlm
53+
}
54+
reverse_proxy localhost:3030
55+
'';
56+
}

secrets/factorio.age

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
age-encryption.org/v1
2-
-> ssh-ed25519 PdUQ2g iZYjjX66sIpSgwfMT0Wb95OPrcjR0/yNmaovGqXHfDw
3-
d43ze8PD12aBiy6ny+DjyHYoXWiYgp1X1dFZ4Hf6q68
4-
-> ssh-ed25519 WTbZGA J4EheK4Op7m/xCs8TCYiempKhlGW8PjQcV2bJb2cPTM
5-
xmQllmAzInkLgIkPvRqdmLhB8t7KOuBEpBvz+OufEL0
6-
-> ssh-ed25519 +geSdw K89/JT66CgDzLv7r7LvJjMtgbViqpwex/xQyCjdSl3A
7-
/lnC+NerNVg07w0+lS8pXpwZ/JGOybU4R/w86pi9sNo
8-
--- BIA9UQzMGPC8lo30EFb4bGwlEQ59URN8rf8CTT4MSVg
9-
F��HF�1���M�t,��]��w`M�+y���<U� �(9L)!��#BKAU�Us8���&9�
2+
-> ssh-ed25519 PdUQ2g Izo9YvmhoRazh5Vcx96XSXuO5i3/5Vs8DlO5tfcxMEA
3+
M0pWb6IfNfoPUYFApkmfnpVxVy8LxtCpkTmK28KJBwg
4+
-> ssh-ed25519 WTbZGA YLkEL+8mW6oO6aWKOV6erSNaOEa1vJxH3z2Wf3NkXXU
5+
VAYFdGljuyC8705TMmMuVCwt3+NxOoEWdzwbhzwse6k
6+
-> ssh-ed25519 +geSdw YR8Z6682zAPzSghy2NpfkOR0c+Y5z3G7HyAoZjVMGz4
7+
FvFe3YKZaWv0YZaVAJBuFzDG0fKBrJ0Q54lyx+wRnM8
8+
--- XmD84dwggnttB0buYwt0FpdqwGrbbO9IUPcF275m1DA
9+
� ���MޣX��(~1�����qĮ���>wŵn�ݹ��Q�t*�w�6� -q0�ni�!�rߕ

secrets/grafana.age

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
age-encryption.org/v1
2-
-> ssh-ed25519 PdUQ2g AhO2yztlz/GfEHgbI04PPJxQmnimYPlWATF3QBwbFXc
3-
FEZQ7EYRi9NQA+tDTxVxlOGbrRgvJj7w+WdkHVLPBTg
4-
-> ssh-ed25519 WTbZGA 0eEOaDusUnLzCeWyrsGY+vRszLF1ySQH6zqoqljoYS4
5-
cNwW6jfSPCLeBelkNnqcZPi3pUxXn3GF15L3geXVuXw
6-
-> ssh-ed25519 +geSdw /clxfsFWjM+HG1mZRCFIBHTaE9gzDgbA85e96E9kUEk
7-
h9cGeMpxQywW1lwOkFNwkMQ2J+PcRzRKzQSa/ulrJME
8-
--- GUfxnLnPohffzv9WtMHQxYAwPHjncQlshyx2VamEhaw
9-
��oF�~sȂk�/vmQ�:�5φ �����T�9����AU!qx���#T�
2+
-> ssh-ed25519 PdUQ2g 6/luVH6pg4+SBNez4/Ip7dE0Dc0iNj7zcREWSjAYaVw
3+
X+FdmLcP9z+m496Pe75gP4vJl+7/pElfwTCnTKRMuHQ
4+
-> ssh-ed25519 WTbZGA JAgQvNEZMi4+5pXbdWcMO0ZNE2phyvk1FZiOkqQpgh8
5+
3e4NDhHs4l5c10BPdjHMP7uN2cL4p8jXybqqZVzjmNk
6+
-> ssh-ed25519 +geSdw 2TPTBOamQwDGoO2X21aZ46J1+mC9ZabkB6X9G8jsU0o
7+
WG+tBagyrX3ZFluq6LdVhsBGC/TDg0Bvluod1qQblrk
8+
--- 2dV6moTU7TARsQaxu+AAmI75uP1x8NxS5wtCXMOIX4c
9+
� _��h�N�Av�S������[�uvW[*��[�����G��9"�U�E�

secrets/miniflux.age

0 Bytes
Binary file not shown.

secrets/mullvad.conf.age

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
age-encryption.org/v1
2+
-> ssh-ed25519 PdUQ2g ux4Dk7FgMklKTZoNBOpKLI6Bk/ru8kJEcqr5Bq75Riw
3+
dS5AX9xkPhpxh8al/HGAlayFtKJXAYzPPuY0JFm8HBY
4+
-> ssh-ed25519 WTbZGA A+xxWJWLdzkpQI+kcDVfZY4lnOg74wyjtQ9GtDYdYzE
5+
mQiA6Dcj2I6TtPpGT9lk16N+h70zVKn6s6AD+CngFUs
6+
-> ssh-ed25519 +geSdw a68CqBn9MgJaBg0JVT1kZml1vG4Z+951mvE8MsDw90s
7+
QnyszEfbaLMQx20TLgRLLgVTOlI6d/JRB1aWt4PGcJQ
8+
--- EYvTcN0WgAR3p2ec8C/RMJpe6Zj/maXs/L92wwO0U+E
9+
2�"��Z3�W_���y�`�v�39(�����L�]6���ԉ(�e�t{��ރ
10+
'��/�e
11+
�EFr?-��8�Tq�F���+�Y�o�J��N��
12+
< �gZ{���K�m6��!w��~<h4���e��ؠ��IV3F*���9Q^��M 3n9†�U����񖳂/qqQ&M#' �Gwnk�pK��ҢC4I]��,P�@ۜf�ö��G��C���“i8c��j�l�lu��:��_/���m<�x ;��33�����9���"mNQO��1�A�y?֐��ɽH>�ݛ�pH�۱�qyU}#��~�>�"���]�K�r�8�4 s�b1
13+
C5C�,�

secrets/password.age

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
age-encryption.org/v1
2-
-> ssh-ed25519 PdUQ2g 3FK4kgQKaPX8UEfbbpJ5R0SS/dj8YTtIZqL8fdMl12c
3-
Nd15KDOmDkWHCHGrUvJZB72iFsZ+82qtlj6/vvhnF4g
4-
-> ssh-ed25519 WTbZGA Gmj8ZFibpdL+i32H+ToqNfZWcbsOMl9/tQvrQRBzLEc
5-
l6DEpHPj/3X4gYkUC/5Hhb+4+jaZDJOo+mOUcwsL41Y
6-
-> ssh-ed25519 +geSdw uLp2RefCnoplkrq8oihDNdFKDeC35aBmU/bdxlC641c
7-
LhqA37tPHkbnKzWiSqw+DI/vfmJYYqI6ODt1jULMwJE
8-
--- sDOLvdfNxydP096H3GBjlbACp2uLHGs0K2sj2EpDm84
9-
���]��s7 ��Fy��c4��.���i�L��h���O�4��͆��6�]jiS�����/�=r��r�*+�U)��:P)�-"Ī� Xe��xF
2+
-> ssh-ed25519 PdUQ2g d/E+E6SnM/MSImI9bJ6Zzeq2YPYUUrPMyHTnEQ+EikA
3+
XbOAJ2cNQCYHdfvKbed9Q6+kEJ1HkW1LfOsijD79gtc
4+
-> ssh-ed25519 WTbZGA LELSdL4SoPsctsNhSvKyDQwcNtDOrpTcLAJXGXlAVT4
5+
Ud6tEoqMTig+o90cnN8sskgyj1cPOawRrJsU+MCD//A
6+
-> ssh-ed25519 +geSdw b01Cfkc7DahoaoWYnXsMBhoCdE/whpjPUiE34v35KiU
7+
DRVIQm2L2OaFRT6Vzn3FQwC71iW3S/blW7qYIW/Cb3M
8+
--- r9BgnrabCaR8huRlyWvlkVQbUZf4QCC+vkHbywv49Y8
9+
fR��hnA>�V��}<�}�-πWھI�������5 ��&�KB�̗�k��F2����xx�Q�\�6u>r��K"��+p��4�&�SN��@���{9S8D��S

0 commit comments

Comments
 (0)