+1
-1
home/modules/packages.nix
+1
-1
home/modules/packages.nix
+1
home/modules/programs/default.nix
+1
home/modules/programs/default.nix
+25
home/modules/programs/jellyfin-rpc.nix
+25
home/modules/programs/jellyfin-rpc.nix
···
1
+
{ pkgs, ... }:
2
+
3
+
{
4
+
home.packages = with pkgs; [ jellyfin-rpc ];
5
+
6
+
age.secrets.jellyfin-rpc = {
7
+
file = ../../../secrets/jellyfin-rpc.json.age;
8
+
mode = "0400";
9
+
};
10
+
11
+
systemd.user.services.jellyfin-rpc = {
12
+
Unit = {
13
+
Description = "jellyfin discord RPC";
14
+
After = [ "network.target" ];
15
+
};
16
+
17
+
Service = {
18
+
ExecStart = "${pkgs.jellyfin-rpc}/bin/jellyfin-rpc -c /run/user/1000/agenix/jellyfin-rpc";
19
+
Restart = "on-failure";
20
+
RestartSec = "10s";
21
+
};
22
+
23
+
Install.WantedBy = [ "default.target" ];
24
+
};
25
+
}
+1
-1
home/modules/programs/neovim.nix
+1
-1
home/modules/programs/neovim.nix
+1
-7
home/modules/programs/niri.nix
+1
-7
home/modules/programs/niri.nix
···
15
15
{ argv = [ "swww img ~/.wallpaper.jpg" ]; }
16
16
{ argv = [ "waybar" ]; }
17
17
{ argv = [ "vesktop" ]; }
18
-
{ sh = "sleep 10s; spotify"; } # delayed to let vesktop start first
19
18
];
20
19
21
20
screenshot-path = "~/screenshots/%Y-%m-%d_%H-%M-%S.png";
···
133
132
default-column-width.proportion = 0.56;
134
133
}
135
134
{
136
-
matches = [ { app-id = "^spotify"; } ];
137
-
open-on-workspace = "social";
138
-
default-column-width.proportion = 0.44;
139
-
}
140
-
{
141
135
matches = [ { app-id = "^steam"; } ];
142
136
open-on-workspace = "3";
143
-
default-column-width.proportion = 0.6;
137
+
default-column-width.proportion = 1.0;
144
138
}
145
139
{
146
140
matches = [ { title = "^(Picture in picture|Picture-in-Picture|Discord Popout)"; } ];
+1
modules/base.nix
+1
modules/base.nix
secrets/jellyfin-rpc.json.age
secrets/jellyfin-rpc.json.age
This is a binary file and will not be displayed.
+1
secrets/secrets.nix
+1
secrets/secrets.nix
+16
systems/desktop/default.nix
+16
systems/desktop/default.nix
···
32
32
};
33
33
34
34
programs.gamemode.enable = true;
35
+
36
+
services.jellyfin = {
37
+
enable = true;
38
+
openFirewall = true;
39
+
};
40
+
41
+
environment.systemPackages = with pkgs; [ cloudflared ];
42
+
43
+
systemd.services.cloudflared = {
44
+
description = "cloudflare tunnel";
45
+
after = [ "jellyfin.service" ];
46
+
47
+
script = "${pkgs.cloudflared}/bin/cloudflared tunnel run --token eyJhIjoiZTcyNjAwOGE4ZmVjNDIwYTNhMDMzZDU2MWNjMGYyZmYiLCJ0IjoiZDUwNTQ4NjktYzEzZC00ZDc4LTk4MjYtOGFhNGJmOWUwOTBiIiwicyI6Ik9UWm1PVEl3WldFdFptVXlOaTAwWWpkbUxUZ3dPVGt0T0RZeFptWmxaREUwWWprMCJ9";
48
+
49
+
wantedBy = [ "multi-user.target" ];
50
+
};
35
51
}