Compare commits
5 commits
2c65e60d08
...
46ca827065
Author | SHA1 | Date | |
---|---|---|---|
Tigor Hutasuhut | 46ca827065 | ||
Tigor Hutasuhut | 564b3a8ef0 | ||
Tigor Hutasuhut | a0ddbd5159 | ||
Tigor Hutasuhut | 2f3a8bcde4 | ||
Tigor Hutasuhut | a4d1d8b115 |
|
@ -82,11 +82,7 @@ in
|
|||
# https://wiki.hyprland.org/Configuring/Binds
|
||||
bind = [
|
||||
# Programs
|
||||
(
|
||||
if config.profile.programs.wezterm.enable
|
||||
then "$mod, RETURN, exec, wezterm-gui"
|
||||
else "$mod, RETURN, exec, kitty"
|
||||
)
|
||||
"$mod, RETURN, exec, kitty"
|
||||
"$mod, E, exec, thunar"
|
||||
"$mod, B, exec, microsoft-edge"
|
||||
"$mod, D, exec, rofi -show drun -replace -i"
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
./go.nix
|
||||
./jellyfin.nix
|
||||
./microsoft-edge.nix
|
||||
./mongodb-compass.nix
|
||||
./mpv.nix
|
||||
./neovide.nix
|
||||
./neovim.nix
|
||||
|
|
11
home/programs/mongodb-compass.nix
Normal file
11
home/programs/mongodb-compass.nix
Normal file
|
@ -0,0 +1,11 @@
|
|||
{ config, lib, unstable, ... }:
|
||||
let
|
||||
cfg = config.profile.programs.mongodb-compass;
|
||||
sopsFile = ../../secrets/bareksa.yaml;
|
||||
in
|
||||
{
|
||||
config = lib.mkIf cfg.enable {
|
||||
sops.secrets."bareksa/mongodb-compass" = { inherit sopsFile; };
|
||||
home.packages = [ unstable.mongodb-compass ];
|
||||
};
|
||||
}
|
|
@ -6,6 +6,9 @@ in
|
|||
config = lib.mkIf cfg.enable {
|
||||
programs.zathura = {
|
||||
enable = true;
|
||||
options = {
|
||||
selection-clipboard = "clipboard";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,6 +13,7 @@ in
|
|||
redmage-demo.enable = lib.mkEnableOption "redmage-demo podman";
|
||||
qbittorrent.enable = lib.mkEnableOption "qbittorrent podman";
|
||||
openobserve.enable = lib.mkEnableOption "openobserve podman";
|
||||
minecraft.enable = mkEnableOption "minecraft server podman";
|
||||
|
||||
servarr = {
|
||||
enable = mkEnableOption "servarr group";
|
||||
|
|
|
@ -77,6 +77,7 @@
|
|||
};
|
||||
|
||||
programs = {
|
||||
mongodb-compass.enable = lib.mkEnableOption "mongodb-compass";
|
||||
yazi.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = true;
|
||||
|
|
|
@ -66,5 +66,8 @@
|
|||
programs.easyeffects.enable = true;
|
||||
steam.enable = true;
|
||||
programs.wezterm.enable = true;
|
||||
programs.mongodb-compass.enable = true;
|
||||
|
||||
podman.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
servarr.real-debrid-manager.enable = false;
|
||||
servarr.rdtclient.enable = true;
|
||||
openobserve.enable = true;
|
||||
minecraft.enable = true;
|
||||
};
|
||||
|
||||
docker = {
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
bareksa:
|
||||
mongodb-compass: ENC[AES256_GCM,data:l4zKnbAKQURlNzLS2CDQMCcZCCyZr8MdbJaHYjGtXnNde7zyS/wkPMKpUzvp39qhFZ87w54n85djdIjW9a3cyjx1Z8L800UFrEAZqiX2CNp1YLZSdyIuq+aD36+H9+3ceB35Z2eeHaLTDUUWK4g+WL07kglwx/IV5wBM0K7CO1uEd6iLcHFxUMUYt/N8l05LmXK95VwVXwMKDwsz5uxrPH5Eao8VG9J5Xh7B9tqY9SyLOhr06W8Y3iyvLHZmlpix0dectSoBTNPY4OM2Uv94Qxy96i8Qv0KMwrYQ8M2FcDXrzV+jXq+6dV/E+8xuqGEn5CDqNDZhaEWZ7VKkeY6Tq7INQqm2S020OfJviemlYXURe/j1a8thoeZGDZeMBTGL+0+fB5VVZoN4Yjmy3ezWMhE+zouvkpCX6nWdE6rTwLOoErtBMktjZTI/DcGBN8dprNYpAclXp16RWYYvSHJEeLOCxCjhi5oySqFgtychmJBDO6L0DW3BwRqe5qhK9wSOWpwZUEp4FcVrorgzKJCzfYJYox5ctrd37mXhikp7aB0ADVwFAV7i3/RTKM+C9H26nrIdl6fF1wyrytt2Ge5MPsHutaj1LB2xcyLGebFTis8fyycDchIpF8PYqulyiw+YIrXiF0MZo7N/G91G83rNT3SMuEQpeTHv4H3wuWWHoiSXIoYhCOuJNoyxSZMi3ZTcVQmgSv0oant3Cxz0+/MrjBl0tgkpeFWdugMKuvl3GWO0uMmLppKUkfUa1vxLoxZ/rk/ATfz/jkg0gQcZ01PJij4iJU/EDByKU0lTcyCd7aaLLG9u96sKn4ymxBjkP1Z9bKOaqtybXB1R9X4Jw12UtsjFhNEyClyrRC9xQ9H0vPh8oWzxyKbIW9KId0XxvFMLhKH6TmWrX2+L324xqkRS5VCtS3YhDtLNJXA8gjj9G2LjYf66rI0Tir9YaYSmiiuE8J0rOoKEJjuaLBwQP1PQo9NsTj4fG7mOUqCOPGp66oiWGRtxuC9j2j841gUUvjzkNOJ2Pj077yQNMO5rRBG1l4EoNhaAzZygp0dGp03np2WTDbqpCtBB6GuQcBnzc5pdzTtFndbOfbHzC9VaG/1Y9FfNEK4TaWm0J7ep4VDa3bzKvUYYb9lSwaAIF/pmP3dMDiRgcn3Ck8uQlHyRxvK+eqNqJpObeiKKsvKfKeniqnpJwUvCEf8yczENu25A/3mRYJW6yWCERxZxiPZn6RdOu/bjZ6Y1wO80lxJ5xGKHpWemAyar8aLuOsPpbbsVWFpx8TG29Z50SGh7TNdgHBJJtuY8voMxsrxMceDhWkNDw1/3IP45RjW2FQ0a/xQ/MAgoCdFopOmzj7lc2zdU6Py5O2goznOrnyQdkik4RwCPenBT1p3WLZjSnH7ymc7elq8bQn5zUUHaDK7oQnIYrHtlYSsSuKY+cSjd3v72HbF85XvIal2LzwxgURafWJ0AUU++SNmR2lKT4s3azVywT/gqq6fVEm5Ffu5hdsTGMU5QgYFRfpPrB7IAYQlpVk8VfYmim5/IY0TG1/0Qv4ylWU2chC+Spof04PmCEQy5MnQru/LP2s7MQ/ZlSaHfZgR2NGdryf2Dyu4FTEZSY08Cdj3EthdvC1aAeiz1yuDpunbZPqF1Oop+lCBfZlWTpc06CdA26+0SjY5EUFtazzuQOY0WsO54dcj0CIfAxpQJEQ==,iv:xu/zsGEV2RWyfKtKmEo9yajNO3RMcaxdP/6Sn4sQQtA=,tag:RpfrCMYfEjJKgwjr+AJ4KA==,type:str]
|
||||
openvpn: ENC[AES256_GCM,data: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,iv:amxpN4aoRTwsRyhdwjtyGgq5d7AGhGmgl4Xb5SUYD24=,tag:T+dE4XtgSsjBrXIyu6Py4g==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
|
@ -15,8 +16,8 @@ sops:
|
|||
TlB6MjhXY1VPUkJQS05hdFVGbGlIdUEKhK2RFfuDZUXdDUL/ueJnRP65lAGFVPXg
|
||||
zqZdgIU6/CKKRjguw4LC2aO75y2tISRrACvvzjjp0LED6rZQfZspWg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-07-12T05:06:34Z"
|
||||
mac: ENC[AES256_GCM,data:AgRjY8T0JLuI/YMeEtGmzu8RcJQCs9PJKzM+yNRbP23GNQGkNEo50WqFqxgphuohpYNLlkdCnA0UFZYxF1iEjJehPMVY99j7UnP41G5fMIzPqW7oXN88VJ+N9ZnyIBk9SOTEJMsYtz5lzI3wRufJpf8RtHLuIHGyMU7u6k3Wxok=,iv:+evH8GBEMJZJGUU5mP+1/8yYr/D1ZitCt4QJ0PHQCzs=,tag:WPQ7BWn+NkJYvOwmvqAIew==,type:str]
|
||||
lastmodified: "2024-07-18T08:14:16Z"
|
||||
mac: ENC[AES256_GCM,data:k68TRZf3l41fn2zWlS8snKL0vYtyIC/NL0F90wopco3X9flR0XvTshlLwHoSfgVbrwK5EAbnEXdO1H2GY9ZEOdjCwSugtx7ass895/6UhJLGM7hm+ybMN9LmHAwuCRWN+ezKE4a4vLOeZpGqEDZ9PfDB/afTpZYEEuGCpk8cp2I=,iv:lnth49LtTCB/9LXDhy32xFMVEgtd5f3LPgFczSU+8M0=,tag:XzRUfwIQPn1uEFJJmg1AQg==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
|
|
|
@ -41,6 +41,7 @@ in
|
|||
# 10.88.0.6 -> Suwayomi Flaresolverr
|
||||
# 10.88.1.1 -> Pihole
|
||||
imports = [
|
||||
./minecraft.nix
|
||||
./openobserve.nix
|
||||
./pihole.nix
|
||||
./qbittorrent.nix
|
||||
|
|
88
system/podman/minecraft.nix
Normal file
88
system/podman/minecraft.nix
Normal file
|
@ -0,0 +1,88 @@
|
|||
{ config, lib, ... }:
|
||||
let
|
||||
name = "minecraft";
|
||||
podman = config.profile.podman;
|
||||
inherit (lib) mkIf strings;
|
||||
ip = "10.88.200.1";
|
||||
# image = "docker.io/05jchambers/legendary-minecraft-purpur-geyser:latest";
|
||||
image = "docker.io/itzg/minecraft-bedrock-server:latest";
|
||||
rootVolume = "/nas/podman/minecraft/hutasuhut";
|
||||
domain = "${name}.tigor.web.id";
|
||||
user = config.profile.user;
|
||||
uid = toString user.uid;
|
||||
gid = toString user.gid;
|
||||
users = [
|
||||
{
|
||||
username = "CrowFX7414";
|
||||
xuid = "2533274941938385";
|
||||
}
|
||||
];
|
||||
in
|
||||
{
|
||||
config = mkIf (podman.enable && podman.${name}.enable) {
|
||||
services.caddy.virtualHosts.${domain}.extraConfig = /*html*/ ''
|
||||
header Content-Type text/html
|
||||
respond <<EOF
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Minecraft Server</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Congrats! The minecraft server should be up!</h1>
|
||||
<h2>
|
||||
This server is invitation only.
|
||||
Please contact the server owner for more info.
|
||||
</h2>
|
||||
<p>Server Address: <b>${domain}</b></p>
|
||||
<p>Server Port: <b>19132</b></p>
|
||||
</body>
|
||||
</html>
|
||||
EOF 200
|
||||
'';
|
||||
|
||||
system.activationScripts."podman-${name}" = ''
|
||||
mkdir -p ${rootVolume}
|
||||
chown ${uid}:${gid} ${rootVolume}
|
||||
'';
|
||||
|
||||
virtualisation.oci-containers.containers.${name} = {
|
||||
inherit image;
|
||||
hostname = name;
|
||||
autoStart = true;
|
||||
user = "${uid}:${gid}";
|
||||
environment = {
|
||||
UID = uid;
|
||||
GID = gid;
|
||||
EULA = "TRUE";
|
||||
TZ = "Asia/Jakarta";
|
||||
SERVER_NAME = "Hutasuhut";
|
||||
DEFAULT_PLAYER_PERMISSION_LEVEL = "operator";
|
||||
LEVEL_NAME = "Hutasuhut";
|
||||
MAX_THREADS = "0"; # Use as many as possible
|
||||
ALLOW_LIST_USERS = strings.concatStringsSep "," (
|
||||
map (user: "${user.username}:${user.xuid}") users
|
||||
);
|
||||
};
|
||||
ports = [
|
||||
# Java Edition Ports
|
||||
# "25565:25565/udp"
|
||||
# "25565:25565"
|
||||
# Bedrock Edition Ports
|
||||
"19132:19132/udp"
|
||||
"19132:19132"
|
||||
];
|
||||
volumes = [
|
||||
"${rootVolume}:/data"
|
||||
];
|
||||
extraOptions = [
|
||||
"--network=podman"
|
||||
"--ip=${ip}"
|
||||
];
|
||||
labels = {
|
||||
"io.containers.autoupdate" = "registry";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
Loading…
Reference in a new issue