forked from aylac.top/nixcfg
this repo has no description

i dont wanna push this but i have to to try to set up it

Changed files
+306 -24
homes
hosts
modules
disko
btrfs-subvolumes
luks-btrfs-subvolumes
flake
home
programs
aria2
firefox
themes
nixos
profiles
workstation
themes
+43 -8
flake.lock
···
"type": "github"
}
},
+
"evergarden": {
+
"inputs": {
+
"nixpkgs": "nixpkgs"
+
},
+
"locked": {
+
"lastModified": 1754955388,
+
"narHash": "sha256-KLYtd4rU9dxuzKeCQCEMhjDTPcJZc/GZh4422dagHAE=",
+
"owner": "everviolet",
+
"repo": "nix",
+
"rev": "a5064e81f380465e5c4db81ef86e6194e1d49a19",
+
"type": "github"
+
},
+
"original": {
+
"owner": "everviolet",
+
"repo": "nix",
+
"type": "github"
+
}
+
},
"files": {
"locked": {
"lastModified": 1753414454,
···
},
"nixpkgs": {
"locked": {
-
"lastModified": 1754725699,
-
"narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=",
-
"owner": "NixOS",
+
"lastModified": 1741037377,
+
"narHash": "sha256-SvtvVKHaUX4Owb+PasySwZsoc5VUeTf1px34BByiOxw=",
+
"owner": "nixos",
"repo": "nixpkgs",
-
"rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054",
+
"rev": "02032da4af073d0f6110540c8677f16d4be0117f",
"type": "github"
},
"original": {
-
"owner": "NixOS",
-
"ref": "nixos-unstable",
+
"owner": "nixos",
+
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
···
"locked": {
"lastModified": 1754725699,
"narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=",
+
"owner": "NixOS",
+
"repo": "nixpkgs",
+
"rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054",
+
"type": "github"
+
},
+
"original": {
+
"owner": "NixOS",
+
"ref": "nixos-unstable",
+
"repo": "nixpkgs",
+
"type": "github"
+
}
+
},
+
"nixpkgs_3": {
+
"locked": {
+
"lastModified": 1754725699,
+
"narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054",
···
"nur": {
"inputs": {
"flake-parts": "flake-parts_4",
-
"nixpkgs": "nixpkgs_2"
+
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1755052263,
···
"actions-nix": "actions-nix",
"agenix": "agenix",
"disko": "disko",
+
"evergarden": "evergarden",
"files": "files",
"firefox-onebar": "firefox-onebar",
"flake-parts": "flake-parts_2",
"git-hooks-nix": "git-hooks-nix",
"home-manager": "home-manager_2",
"lanzaboote": "lanzaboote",
-
"nixpkgs": "nixpkgs",
+
"nixpkgs": "nixpkgs_2",
"nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur",
"secrets": "secrets"
+2
flake.nix
···
inputs.nixpkgs.follows = "nixpkgs";
};
+
evergarden.url = "github:everviolet/nix";
+
files.url = "github:alyraffauf/files";
flake-parts.url = "github:hercules-ci/flake-parts";
+2 -1
homes/ayla/default.nix
···
aria2.enable = true;
};
-
style = {
+
themes = {
+
#evergarden.enable = true;
fonts.enable = false;
};
};
+4 -1
hosts/morgana/default.nix
···
user = "ayla";
};
};
-
style.fonts.enable = true;
+
themes = {
+
#evergarden.enable = true;
+
fonts.enable = true;
+
};
};
myUsers = {
+1
hosts/nanpi/home.nix
···
stateVersion = "25.05";
username = "ayla";
};
+
programs = {
helix = {
enable = true;
+1
hosts/nanpi2/README.md
···
+
my server that is actually an old weak laptop
+75
hosts/nanpi2/default.nix
···
+
{
+
self,
+
config,
+
...
+
}: {
+
imports = [
+
./home.nix
+
./secrets.nix
+
./services.nix
+
self.nixosModules.locale-en-gb
+
self.diskoConfigurations.luks-btrfs-subvolumes
+
];
+
+
networking.hostName = "nanpi2";
+
system.stateVersion = "25.05";
+
time.timeZone = "America/Sao_Paulo";
+
myHardware.hp.theRedOne.enable = true;
+
+
myNixOS = {
+
programs = {
+
systemd-boot.enable = true;
+
nix.enable = true;
+
};
+
profiles = {
+
base.enable = true;
+
server.enable = true;
+
autoUpgrade = {
+
enable = true;
+
operation = "boot";
+
};
+
backups.enable = true;
+
};
+
services = {
+
caddy.enable = true;
+
tailscale = {
+
enable = true;
+
enableCaddy = false;
+
operator = "ayla";
+
};
+
syncthing = {
+
enable = true;
+
certFile = config.age.secrets.syncthingCert.path;
+
keyFile = config.age.secrets.syncthingKey.path;
+
user = "ayla";
+
};
+
qbittorrent = {
+
inherit (config.mySnippets.tailnet.networkMap.qbittorrent) port;
+
enable = true;
+
};
+
};
+
};
+
+
myUsers = {
+
ayla = {
+
enable = true;
+
password = "REDACTED";
+
};
+
};
+
+
boot = {
+
initrd = {
+
availableKernelModules = [
+
"xhci_pci"
+
"ahci"
+
"usb_storage"
+
"sd_mod"
+
"rtsx_pci_sdmmc"
+
];
+
};
+
+
kernelParams = [
+
"consoleblank=30"
+
];
+
};
+
}
+46
hosts/nanpi2/home.nix
···
+
{self, ...}: {
+
home-manager.users.ayla = {pkgs, ...}: {
+
imports = [
+
self.homeModules.default
+
self.inputs.agenix.homeManagerModules.default
+
];
+
+
age.secrets.rclone.file = "${self.inputs.secrets}/rclone.age";
+
+
home = {
+
homeDirectory = "/home/ayla";
+
+
packages = with pkgs; [
+
curl
+
rclone
+
restic
+
];
+
+
stateVersion = "25.05";
+
username = "ayla";
+
};
+
+
programs = {
+
helix = {
+
enable = true;
+
defaultEditor = true;
+
};
+
+
micro = {
+
enable = true;
+
};
+
+
home-manager.enable = true;
+
};
+
+
myHome = {
+
programs = {
+
git.enable = true;
+
ssh.enable = true;
+
fastfetch.enable = true;
+
};
+
+
profiles.shell.enable = true;
+
};
+
};
+
}
+12
hosts/nanpi2/secrets.nix
···
+
{self, ...}: {
+
age.secrets = {
+
cloudflareCertificate.file = "${self.inputs.secrets}/cloudflare/certificate.age";
+
cloudflareCredentials.file = "${self.inputs.secrets}/cloudflare/credentials.age";
+
pds.file = "${self.inputs.secrets}/pds.age";
+
rclone.file = "${self.inputs.secrets}/rclone.age";
+
tailscaleAuthKey.file = "${self.inputs.secrets}/tailscale/auth.age";
+
syncthingCert.file = "${self.inputs.secrets}/ayla/syncthing/nanpi/cert.age";
+
syncthingKey.file = "${self.inputs.secrets}/ayla/syncthing/nanpi/key.age";
+
resticPassword.file = "${self.inputs.secrets}/restic-passwd.age";
+
};
+
}
+60
hosts/nanpi2/services.nix
···
+
{config, ...}: let
+
dataDirectory = "/home/Data";
+
in {
+
services = {
+
pds = {
+
enable = true;
+
environmentFiles = [config.age.secrets.pds.path];
+
pdsadmin.enable = true;
+
settings = {
+
PDS_HOSTNAME = "pds.aylac.top";
+
};
+
};
+
+
cloudflared = {
+
enable = true;
+
certificateFile = config.age.secrets.cloudflareCertificate.path;
+
tunnels = {
+
"3c012d05-cc92-4598-a726-909088e6588c" = {
+
certificateFile = config.age.secrets.cloudflareCertificate.path;
+
credentialsFile = config.age.secrets.cloudflareCredentials.path;
+
default = "http_status:404";
+
ingress = {
+
"pds.aylac.top" = "http://localhost:3000";
+
};
+
};
+
};
+
};
+
+
caddy.virtualHosts = {
+
"pds.aylac.top" = {
+
extraConfig = ''
+
reverse_proxy http://localhost:3000
+
'';
+
};
+
"${config.mySnippets.tailnet.networkMap.jellyfin.vHost}" = {
+
extraConfig = ''
+
bind tailscale/jellyfin
+
encode zstd gzip
+
reverse_proxy ${config.mySnippets.tailnet.networkMap.jellyfin.hostName}:${toString config.mySnippets.tailnet.networkMap.jellyfin.port} {
+
flush_interval -1
+
}
+
'';
+
};
+
+
"${config.mySnippets.tailnet.networkMap.qbittorrent.vHost}" = {
+
extraConfig = ''
+
bind tailscale/qbittorrent
+
encode zstd gzip
+
reverse_proxy ${config.mySnippets.tailnet.networkMap.qbittorrent.hostName}:${toString config.mySnippets.tailnet.networkMap.qbittorrent.port}
+
'';
+
};
+
};
+
+
jellyfin = {
+
enable = true;
+
openFirewall = true;
+
dataDir = "${dataDirectory}/jellyfin";
+
};
+
};
+
}
+1 -1
modules/disko/btrfs-subvolumes/default.nix
···
}: {
options.myDisko.installDrive = lib.mkOption {
description = "Disk to install NixOS to.";
-
default = "/dev/nvme0n1";
+
default = "/dev/sda1";
type = lib.types.str;
};
+1 -1
modules/disko/luks-btrfs-subvolumes/default.nix
···
}: {
options.myDisko.installDrive = lib.mkOption {
description = "Disk to install NixOS to.";
-
default = "/dev/nvme0n1";
+
default = "/dev/sda";
type = lib.types.str;
};
+1
modules/flake/nixos.nix
···
inputs.nixpkgs.lib.genAttrs [
"morgana"
"nanpi"
+
"nanpi2"
] (
host:
inputs.nixpkgs.lib.nixosSystem {
+1 -1
modules/home/default.nix
···
./programs
./services
./profiles
-
./style
+
./themes
./packages.nix
./hidden.nix
inputs.agenix.homeManagerModules.default
+3
modules/home/programs/aria2/default.nix
···
config = lib.mkIf config.myHome.services.aria2.enable {
programs.aria2 = {
enable = true;
+
settings = {
+
dir = "~/Downloads";
+
};
};
};
}
+1 -1
modules/home/programs/firefox/default.nix
···
# OneBar settings
"onebar.collapse-URLbar" = true;
-
"onebar.conditional-navigation-buttons" = true;
+
"onebar.conditional-navigation-buttons" = false;
"onebar.hide-all-URLbar-icons" = true;
};
+1
modules/home/style/default.nix modules/nixos/themes/default.nix
···
{...}: {
imports = [
./fonts
+
# ./evergarden
];
}
+2 -2
modules/home/style/fonts/default.nix modules/home/themes/fonts/default.nix
···
}) (findFilesRecursive fontSourceDir)
);
in {
-
options.myHome.style.fonts.enable = lib.mkEnableOption "custom fonts";
+
options.myHome.themes.fonts.enable = lib.mkEnableOption "custom fonts";
-
config = lib.mkIf config.myHome.style.fonts.enable {
+
config = lib.mkIf config.myHome.themes.fonts.enable {
home.file = fontFileEntries;
};
}
+18
modules/home/themes/evergarden/default.nix
···
+
{
+
lib,
+
inputs,
+
config,
+
...
+
}: {
+
imports = [inputs.evergarden.homeManagerModules.default];
+
+
options.myHome.themes.evergarden.enable = lib.mkEnableOption "enable the evergarden theme";
+
+
config = lib.mkIf config.myHome.themes.evergarden.enable {
+
evergarden = {
+
enable = true;
+
variant = "winter";
+
accent = "pink";
+
};
+
};
+
}
+1 -1
modules/nixos/default.nix
···
imports = [
./desktop
./profiles
-
./style
+
./themes
./programs
./services
];
+9 -5
modules/nixos/profiles/workstation/default.nix
···
system.nixos.tags = ["workstation"];
-
systemd.oomd = {
-
enable = true;
-
enableRootSlice = true;
-
enableSystemSlice = true;
-
enableUserSlices = true;
+
systemd = {
+
oomd = {
+
enable = true;
+
enableRootSlice = true;
+
enableSystemSlice = true;
+
enableUserSlices = true;
+
};
+
# i hate these guys
+
coredump.enable = false;
};
zramSwap = {
+1
modules/nixos/style/default.nix modules/home/themes/default.nix
···
{...}: {
imports = [
./fonts
+
#./evergarden
];
}
+2 -2
modules/nixos/style/fonts/default.nix modules/nixos/themes/fonts/default.nix
···
}: let
emojiFont = "Noto Color Emoji";
in {
-
options.myNixOS.style.fonts = {
+
options.myNixOS.themes.fonts = {
enable = lib.mkEnableOption "enable fonts";
};
-
config = lib.mkIf config.myNixOS.style.fonts.enable {
+
config = lib.mkIf config.myNixOS.themes.fonts.enable {
environment.variables = {
FREETYPE_PROPERTIES = "autofitter:no-stem-darkening=0 autofitter:darkening-parameters=500,0,1000,500,2500,500,4000,0 cff:no-stem-darkening=0 type1:no-stem-darkening=0 t1cid:no-stem-darkening=0";
QT_NO_SYNTHESIZED_BOLD = 1;
+18
modules/nixos/themes/evergarden/default.nix
···
+
{
+
lib,
+
inputs,
+
config,
+
...
+
}: {
+
imports = [inputs.evergarden.nixosModules.evergarden];
+
+
options.myNixOS.themes.evergarden.enable = lib.mkEnableOption "enable the evergarden theme";
+
+
config = lib.mkIf config.myNixOS.themes.evergarden.enable {
+
evergarden = {
+
enable = true;
+
variant = "winter";
+
accent = "pink";
+
};
+
};
+
}