mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-16 01:55:13 -05:00
Compare commits
20 commits
c67e864d40
...
f642608281
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f642608281 | ||
![]() |
4db6929078 | ||
![]() |
77f1db64d2 | ||
![]() |
d145245648 | ||
![]() |
6a093dfcc6 | ||
![]() |
368e46628a | ||
![]() |
176ab511aa | ||
![]() |
957ba844bd | ||
![]() |
fed916f55a | ||
![]() |
2c74e855d1 | ||
![]() |
e27fe1da36 | ||
![]() |
efbbeaa942 | ||
![]() |
b7f7f50622 | ||
![]() |
694b6da25c | ||
![]() |
b6e41d866a | ||
![]() |
1da13e96b6 | ||
![]() |
8d661c10aa | ||
![]() |
60f7118212 | ||
![]() |
3db03776cc | ||
![]() |
c82dd5e36f |
18 changed files with 130 additions and 16 deletions
18
config/instances/config/hledger.nix
Executable file
18
config/instances/config/hledger.nix
Executable file
|
@ -0,0 +1,18 @@
|
||||||
|
{ instancesFunctions }:
|
||||||
|
let
|
||||||
|
inherit (instancesFunctions)
|
||||||
|
dummy
|
||||||
|
;
|
||||||
|
hledgerLabel = "Hledger";
|
||||||
|
hledgerName = "hledger";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
label = hledgerLabel;
|
||||||
|
name = hledgerName;
|
||||||
|
paths = {
|
||||||
|
path0 = "/mnt/media/storage/${hledgerLabel}";
|
||||||
|
};
|
||||||
|
ports = {
|
||||||
|
port0 = 5000;
|
||||||
|
};
|
||||||
|
}
|
11
home/modules/cli/fun/aniCli/default.nix
Executable file
11
home/modules/cli/fun/aniCli/default.nix
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
home.packages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
|
ani-cli
|
||||||
|
;
|
||||||
|
};
|
||||||
|
}
|
10
home/modules/cli/fun/default.nix
Executable file
10
home/modules/cli/fun/default.nix
Executable file
|
@ -0,0 +1,10 @@
|
||||||
|
let
|
||||||
|
content = builtins.readDir ./.;
|
||||||
|
|
||||||
|
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
|
||||||
|
|
||||||
|
importList = map (name: ./. + "/${name}") dirContent;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = importList;
|
||||||
|
}
|
|
@ -64,6 +64,16 @@ in
|
||||||
];
|
];
|
||||||
keyword = instances.forgejo.label;
|
keyword = instances.forgejo.label;
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
name = instances.hledger.label;
|
||||||
|
url = "http://localhost.${builtins.toString instances.hledger.ports.port0}";
|
||||||
|
tags = [
|
||||||
|
instances.hledger.name
|
||||||
|
"hledger"
|
||||||
|
"finances"
|
||||||
|
];
|
||||||
|
keyword = instances.hledger.label;
|
||||||
|
}
|
||||||
{
|
{
|
||||||
name = "${instances.jellyfin.label} (Internet)";
|
name = "${instances.jellyfin.label} (Internet)";
|
||||||
url = "https://${instances.jellyfin.name}.${instances.web.domains.url0}";
|
url = "https://${instances.jellyfin.name}.${instances.web.domains.url0}";
|
||||||
|
@ -78,7 +88,7 @@ in
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = instances.mastodon.label;
|
name = instances.mastodon.label;
|
||||||
url = "https://${instances.web.domains.url1}";
|
url = "https://${instances.mastodon.subdomain}.${instances.web.domains.url3}";
|
||||||
tags = [
|
tags = [
|
||||||
instances.mastodon.name
|
instances.mastodon.name
|
||||||
"mast"
|
"mast"
|
||||||
|
@ -143,7 +153,7 @@ in
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = instances.peertube.label;
|
name = instances.peertube.label;
|
||||||
url = "https://${instances.peertube.subdomain}.${instances.web.domains.url1}";
|
url = "https://${instances.peertube.subdomain}.${instances.web.domains.url3}";
|
||||||
tags = [
|
tags = [
|
||||||
instances.peertube.name
|
instances.peertube.name
|
||||||
"peer"
|
"peer"
|
||||||
|
|
|
@ -20,6 +20,7 @@ let
|
||||||
kdenlive = "(org.kde.kdenlive)";
|
kdenlive = "(org.kde.kdenlive)";
|
||||||
shotcut = "(shotcut)";
|
shotcut = "(shotcut)";
|
||||||
scrcpy = "(.scrcpy-wrapped)";
|
scrcpy = "(.scrcpy-wrapped)";
|
||||||
|
battle = "(.*Battle.net.*)";
|
||||||
|
|
||||||
maxsizeWindows = [
|
maxsizeWindows = [
|
||||||
"maxsize 720 400, class:^${blueman}$"
|
"maxsize 720 400, class:^${blueman}$"
|
||||||
|
@ -34,6 +35,8 @@ let
|
||||||
"maxsize 720 400, title:^${picture}$"
|
"maxsize 720 400, title:^${picture}$"
|
||||||
"maxsize 720 400, title:^${save}$"
|
"maxsize 720 400, title:^${save}$"
|
||||||
"maxsize 720 400, title:^${discord-popout}$"
|
"maxsize 720 400, title:^${discord-popout}$"
|
||||||
|
"maxsize 1280 720, title:^${battle}$"
|
||||||
|
"minsize 1280 720, title:^${battle}$"
|
||||||
];
|
];
|
||||||
|
|
||||||
floatWindows = builtins.map (x: "float, " + x) [
|
floatWindows = builtins.map (x: "float, " + x) [
|
||||||
|
@ -50,6 +53,7 @@ let
|
||||||
"title:^(${discord-popout})$"
|
"title:^(${discord-popout})$"
|
||||||
"title:^${bitwarden}$"
|
"title:^${bitwarden}$"
|
||||||
"title:^${save}$"
|
"title:^${save}$"
|
||||||
|
"title:^${battle}$"
|
||||||
];
|
];
|
||||||
|
|
||||||
pinWindows = builtins.map (x: "pin, " + x) [
|
pinWindows = builtins.map (x: "pin, " + x) [
|
||||||
|
|
|
@ -60,6 +60,7 @@ in
|
||||||
inherit (modules)
|
inherit (modules)
|
||||||
syncthing
|
syncthing
|
||||||
ollama
|
ollama
|
||||||
|
hledger
|
||||||
# plasma
|
# plasma
|
||||||
# sddm
|
# sddm
|
||||||
;
|
;
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
environment = {
|
environment = {
|
||||||
# enableAllTerminfo = true;
|
enableAllTerminfo = true;
|
||||||
systemPackages = builtins.attrValues {
|
systemPackages = builtins.attrValues {
|
||||||
inherit (pkgs)
|
inherit (pkgs)
|
||||||
git
|
git
|
||||||
|
|
72
nixos/modules/hledger.nix
Executable file
72
nixos/modules/hledger.nix
Executable file
|
@ -0,0 +1,72 @@
|
||||||
|
{
|
||||||
|
flake,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (flake.config.machines.devices)
|
||||||
|
server
|
||||||
|
;
|
||||||
|
inherit (flake.config.services.instances)
|
||||||
|
hledger
|
||||||
|
web
|
||||||
|
;
|
||||||
|
service = hledger;
|
||||||
|
localhost = web.localhost.address0;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
hledger-web = {
|
||||||
|
enable = true;
|
||||||
|
host = localhost;
|
||||||
|
# baseUrl = "https://${host}";
|
||||||
|
stateDir = service.paths.path0;
|
||||||
|
port = service.ports.port0;
|
||||||
|
journalFiles = [
|
||||||
|
".hledger.journal"
|
||||||
|
];
|
||||||
|
allow = "edit";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
systemPackages = builtins.attrValues {
|
||||||
|
inherit (pkgs)
|
||||||
|
hledger
|
||||||
|
hledger-ui
|
||||||
|
;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
users = {
|
||||||
|
users.${service.name} = {
|
||||||
|
isSystemUser = true;
|
||||||
|
group = service.name;
|
||||||
|
home = service.paths.path0;
|
||||||
|
};
|
||||||
|
groups.${service.name} = { };
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/var/lib/${service.name}" = {
|
||||||
|
device = service.paths.path0;
|
||||||
|
fsType = "none";
|
||||||
|
options = [
|
||||||
|
"bind"
|
||||||
|
];
|
||||||
|
depends = [
|
||||||
|
server.storage0.mount
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"Z ${service.paths.path0} 0755 ${service.name} ${service.name} -"
|
||||||
|
];
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
firewall = {
|
||||||
|
allowedTCPPorts = [
|
||||||
|
service.ports.port0
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -38,7 +38,6 @@ in
|
||||||
value = dnsConfig;
|
value = dnsConfig;
|
||||||
})
|
})
|
||||||
[
|
[
|
||||||
"nextcloud"
|
|
||||||
"jellyfin"
|
"jellyfin"
|
||||||
"minecraft"
|
"minecraft"
|
||||||
"ollama"
|
"ollama"
|
||||||
|
@ -46,17 +45,6 @@ in
|
||||||
"vaultwarden"
|
"vaultwarden"
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
++ (map
|
|
||||||
(service: {
|
|
||||||
name = "${instanceName service}.${domain1}";
|
|
||||||
value = dnsConfig;
|
|
||||||
})
|
|
||||||
[
|
|
||||||
"nextcloud"
|
|
||||||
"matrix"
|
|
||||||
"owncast"
|
|
||||||
]
|
|
||||||
)
|
|
||||||
++ (map
|
++ (map
|
||||||
(service: {
|
(service: {
|
||||||
name = "${instanceName service}.${domain3}";
|
name = "${instanceName service}.${domain3}";
|
||||||
|
|
|
@ -5,7 +5,7 @@ let
|
||||||
;
|
;
|
||||||
|
|
||||||
moduleImports = map (module: self.homeModules.${module}) [
|
moduleImports = map (module: self.homeModules.${module}) [
|
||||||
"cli"
|
"server"
|
||||||
];
|
];
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue