mirror of
https://github.com/oqyude/nixos.git
synced 2026-06-16 06:51:50 +03:00
123
This commit is contained in:
@@ -95,7 +95,8 @@ let
|
|||||||
throttled.enable = true;
|
throttled.enable = true;
|
||||||
journald = {
|
journald = {
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
SystemMaxUse=512M
|
|
||||||
|
SystemMaxUse=512M
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
openssh = {
|
openssh = {
|
||||||
|
|||||||
@@ -43,7 +43,8 @@ let
|
|||||||
earlyoom.enable = true;
|
earlyoom.enable = true;
|
||||||
journald = {
|
journald = {
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
SystemMaxUse=512M
|
|
||||||
|
SystemMaxUse=512M
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
samba = {
|
samba = {
|
||||||
|
|||||||
@@ -24,7 +24,8 @@ let
|
|||||||
services = {
|
services = {
|
||||||
journald = {
|
journald = {
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
SystemMaxUse=512M
|
|
||||||
|
SystemMaxUse=512M
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
earlyoom.enable = true;
|
earlyoom.enable = true;
|
||||||
|
|||||||
@@ -117,5 +117,6 @@
|
|||||||
// (import ./deploy flakeContext)
|
// (import ./deploy flakeContext)
|
||||||
// (import ./home flakeContext)
|
// (import ./home flakeContext)
|
||||||
// (import ./modules flakeContext)
|
// (import ./modules flakeContext)
|
||||||
|
// (import ./overlays flakeContext)
|
||||||
// (import ./pkgs flakeContext);
|
// (import ./pkgs flakeContext);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,9 @@ let
|
|||||||
disko.nixosModules.disko # disko module
|
disko.nixosModules.disko # disko module
|
||||||
nixvim.nixosModules.nixvim # nixvim module
|
nixvim.nixosModules.nixvim # nixvim module
|
||||||
];
|
];
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
inputs.self.nixosOverlays.default
|
||||||
|
];
|
||||||
_module.args = {
|
_module.args = {
|
||||||
inputs = inputs;
|
inputs = inputs;
|
||||||
xlib = config.xlib;
|
xlib = config.xlib;
|
||||||
|
|||||||
@@ -97,9 +97,10 @@ in
|
|||||||
nano = {
|
nano = {
|
||||||
enable = true;
|
enable = true;
|
||||||
nanorc = ''
|
nanorc = ''
|
||||||
set nowrap
|
|
||||||
set tabstospaces
|
set nowrap
|
||||||
set tabsize 2
|
set tabstospaces
|
||||||
|
set tabsize 2
|
||||||
'';
|
'';
|
||||||
syntaxHighlight = true;
|
syntaxHighlight = true;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -38,11 +38,12 @@
|
|||||||
polkit = {
|
polkit = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
polkit.addRule(function(action, subject) {
|
|
||||||
if (subject.isInGroup("wheel")){ // for sudo
|
polkit.addRule(function(action, subject) {
|
||||||
return polkit.Result.YES;
|
if (subject.isInGroup("wheel")){ // for sudo
|
||||||
}
|
return polkit.Result.YES;
|
||||||
});
|
}
|
||||||
|
});
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -19,15 +19,16 @@
|
|||||||
theme = "robbyrussell";
|
theme = "robbyrussell";
|
||||||
};
|
};
|
||||||
shellInit = ''
|
shellInit = ''
|
||||||
beet-n() {
|
|
||||||
echo "$*" | aichat -cer beets
|
beet-n() {
|
||||||
}
|
echo "$*" | aichat -cer beets
|
||||||
beet-p() {
|
}
|
||||||
beet mod path:. playlist="$*"
|
beet-p() {
|
||||||
}
|
beet mod path:. playlist="$*"
|
||||||
beet-ims() {
|
}
|
||||||
beet im ./ -S $*
|
beet-ims() {
|
||||||
}
|
beet im ./ -S $*
|
||||||
|
}
|
||||||
'';
|
'';
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
# shell
|
# shell
|
||||||
|
|||||||
@@ -153,10 +153,11 @@ in
|
|||||||
];
|
];
|
||||||
requires = [ "coolwsd.service" ];
|
requires = [ "coolwsd.service" ];
|
||||||
script = ''
|
script = ''
|
||||||
${occ}/bin/nextcloud-occ config:app:set richdocuments wopi_url --value ${lib.escapeShellArg wopi_url}
|
|
||||||
${occ}/bin/nextcloud-occ config:app:set richdocuments public_wopi_url --value ${lib.escapeShellArg public_wopi_url}
|
${occ}/bin/nextcloud-occ config:app:set richdocuments wopi_url --value ${lib.escapeShellArg wopi_url}
|
||||||
${occ}/bin/nextcloud-occ config:app:set richdocuments wopi_allowlist --value ${lib.escapeShellArg wopi_allowlist}
|
${occ}/bin/nextcloud-occ config:app:set richdocuments public_wopi_url --value ${lib.escapeShellArg public_wopi_url}
|
||||||
${occ}/bin/nextcloud-occ richdocuments:setup
|
${occ}/bin/nextcloud-occ config:app:set richdocuments wopi_allowlist --value ${lib.escapeShellArg wopi_allowlist}
|
||||||
|
${occ}/bin/nextcloud-occ richdocuments:setup
|
||||||
'';
|
'';
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
|
|||||||
@@ -13,7 +13,8 @@
|
|||||||
description = "Backup data using rsync";
|
description = "Backup data using rsync";
|
||||||
requisite = [ "mnt-archive.mount" ]; # hard-code
|
requisite = [ "mnt-archive.mount" ]; # hard-code
|
||||||
script = ''
|
script = ''
|
||||||
${pkgs.rsync}/bin/rsync -rtv --delete ${xlib.dirs.services-folder}/ ${xlib.dirs.archive-drive}/Services/
|
|
||||||
|
${pkgs.rsync}/bin/rsync -rtv --delete ${xlib.dirs.services-folder}/ ${xlib.dirs.archive-drive}/Services/
|
||||||
'';
|
'';
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
@@ -28,8 +29,9 @@
|
|||||||
description = "Backup data using rsync";
|
description = "Backup data using rsync";
|
||||||
requisite = [ "mnt-mobile.mount" ]; # hard-code
|
requisite = [ "mnt-mobile.mount" ]; # hard-code
|
||||||
script = ''
|
script = ''
|
||||||
${pkgs.rsync}/bin/rsync -rtv --delete ${xlib.dirs.server-home}/Music/ ${xlib.dirs.mobile-drive}/Music/
|
|
||||||
${pkgs.rsync}/bin/rsync -rtv --delete "${xlib.dirs.server-home}/Hosts/epral/Neo Backup/" "${xlib.dirs.mobile-drive}/Neo Backup/"
|
${pkgs.rsync}/bin/rsync -rtv --delete ${xlib.dirs.server-home}/Music/ ${xlib.dirs.mobile-drive}/Music/
|
||||||
|
${pkgs.rsync}/bin/rsync -rtv --delete "${xlib.dirs.server-home}/Hosts/epral/Neo Backup/" "${xlib.dirs.mobile-drive}/Neo Backup/"
|
||||||
'';
|
'';
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
|
|||||||
@@ -36,16 +36,19 @@
|
|||||||
WorkingDirectory = "${xlib.dirs.user-services}/zapret";
|
WorkingDirectory = "${xlib.dirs.user-services}/zapret";
|
||||||
User = "root";
|
User = "root";
|
||||||
ExecStart = ''
|
ExecStart = ''
|
||||||
/run/current-system/sw/bin/bash ${xlib.dirs.user-services}/zapret/main_script.sh -nointeractive
|
|
||||||
|
/run/current-system/sw/bin/bash ${xlib.dirs.user-services}/zapret/main_script.sh -nointeractive
|
||||||
'';
|
'';
|
||||||
ExecStop = ''
|
ExecStop = ''
|
||||||
/run/current-system/sw/bin/bash ${xlib.dirs.user-services}/zapret/stop_and_clean_nft.sh
|
|
||||||
|
/run/current-system/sw/bin/bash ${xlib.dirs.user-services}/zapret/stop_and_clean_nft.sh
|
||||||
'';
|
'';
|
||||||
# ExecStopPost = ''
|
# ExecStopPost = ''
|
||||||
# /run/current-system/sw/bin/echo "Сервис завершён"
|
# /run/current-system/sw/bin/echo "Сервис завершён"
|
||||||
# '';
|
# '';
|
||||||
PIDFile = ''
|
PIDFile = ''
|
||||||
/run/zapret_discord_youtube.pid
|
|
||||||
|
/run/zapret_discord_youtube.pid
|
||||||
'';
|
'';
|
||||||
# Restart = "on-failure";
|
# Restart = "on-failure";
|
||||||
# RestartSec = "5s";
|
# RestartSec = "5s";
|
||||||
|
|||||||
@@ -64,8 +64,9 @@
|
|||||||
TimeoutSec = 300;
|
TimeoutSec = 300;
|
||||||
};
|
};
|
||||||
script = ''
|
script = ''
|
||||||
cd /mnt/containers/3x-ui
|
|
||||||
podman build -t compose2nix/3xui_app -f ./Dockerfile .
|
cd /mnt/containers/3x-ui
|
||||||
|
podman build -t compose2nix/3xui_app -f ./Dockerfile .
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
+24
-15
@@ -24,11 +24,12 @@ in
|
|||||||
root = "${inputs.zeroq-credentials.services.xray.subs}";
|
root = "${inputs.zeroq-credentials.services.xray.subs}";
|
||||||
locations."/" = {
|
locations."/" = {
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
auth_basic "Restricted";
|
|
||||||
auth_basic_user_file /etc/nginx/pubray;
|
|
||||||
|
|
||||||
if ($subfile = "") { return 403; }
|
auth_basic "Restricted";
|
||||||
rewrite ^/$ $subfile break;
|
auth_basic_user_file /etc/nginx/pubray;
|
||||||
|
|
||||||
|
if ($subfile = "") { return 403; }
|
||||||
|
rewrite ^/$ $subfile break;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -40,7 +41,8 @@ in
|
|||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
|
client_max_body_size 5G;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
# "node-red.zeroq.ru" = {
|
# "node-red.zeroq.ru" = {
|
||||||
@@ -73,7 +75,8 @@ in
|
|||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
|
client_max_body_size 5G;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"office.zeroq.ru" = {
|
"office.zeroq.ru" = {
|
||||||
@@ -86,10 +89,11 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
client_max_body_size 5G;
|
||||||
proxy_set_header X-Real-IP $remote_addr;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
''; # absolute_redirect off;
|
''; # absolute_redirect off;
|
||||||
};
|
};
|
||||||
"immich.zeroq.ru" = {
|
"immich.zeroq.ru" = {
|
||||||
@@ -100,7 +104,8 @@ in
|
|||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
|
client_max_body_size 5G;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"nextcloud.zeroq.ru" = {
|
"nextcloud.zeroq.ru" = {
|
||||||
@@ -117,7 +122,8 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
|
client_max_body_size 5G;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"calibre.zeroq.ru" = {
|
"calibre.zeroq.ru" = {
|
||||||
@@ -128,7 +134,8 @@ in
|
|||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
|
client_max_body_size 5G;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"pdf.zeroq.ru" = {
|
"pdf.zeroq.ru" = {
|
||||||
@@ -139,7 +146,8 @@ in
|
|||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
|
client_max_body_size 5G;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"ai.zeroq.ru" = {
|
"ai.zeroq.ru" = {
|
||||||
@@ -150,7 +158,8 @@ in
|
|||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
client_max_body_size 5G;
|
|
||||||
|
client_max_body_size 5G;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{ inputs, ... }@flakeContext:
|
||||||
|
{
|
||||||
|
nixosOverlays = {
|
||||||
|
default = import ./pkgs.nix flakeContext;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{ inputs, ... }:
|
||||||
|
|
||||||
|
self: super: {
|
||||||
|
yazi = super.yazi.overrideDerivation (old: {
|
||||||
|
passthru = (old.passthru or { }) // {
|
||||||
|
configHome = configHome;
|
||||||
|
};
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -14,9 +14,10 @@ let
|
|||||||
unpackZigArtifact =
|
unpackZigArtifact =
|
||||||
{ name, artifact }:
|
{ name, artifact }:
|
||||||
runCommandLocal name { nativeBuildInputs = [ zig ]; } ''
|
runCommandLocal name { nativeBuildInputs = [ zig ]; } ''
|
||||||
hash="$(zig fetch --global-cache-dir "$TMPDIR" ${artifact})"
|
|
||||||
mv "$TMPDIR/p/$hash" "$out"
|
hash="$(zig fetch --global-cache-dir "$TMPDIR" ${artifact})"
|
||||||
chmod 755 "$out"
|
mv "$TMPDIR/p/$hash" "$out"
|
||||||
|
chmod 755 "$out"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
fetchZig =
|
fetchZig =
|
||||||
|
|||||||
@@ -17,11 +17,12 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
hash = "sha256-868FK3wr/fjXzrQJ4YVDBvzNuX818lufEx/K0fvJdWo=";
|
hash = "sha256-868FK3wr/fjXzrQJ4YVDBvzNuX818lufEx/K0fvJdWo=";
|
||||||
};
|
};
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
ln -s ${
|
|
||||||
callPackage ./build.zig.zon.nix {
|
ln -s ${
|
||||||
zig = zig_0_15;
|
callPackage ./build.zig.zon.nix {
|
||||||
}
|
zig = zig_0_15;
|
||||||
} $ZIG_GLOBAL_CACHE_DIR/p
|
}
|
||||||
|
} $ZIG_GLOBAL_CACHE_DIR/p
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ zig_0_15 ];
|
nativeBuildInputs = [ zig_0_15 ];
|
||||||
|
|||||||
Reference in New Issue
Block a user