Compare commits

...

2 commits

Author SHA1 Message Date
be184a26ff
wow 2026-07-05 15:54:10 +09:00
3adc5e9f73
refactoring 2026-07-05 13:36:31 +09:00
49 changed files with 216 additions and 77 deletions

View file

@ -123,6 +123,7 @@
paring.overlays.default paring.overlays.default
imnyang.overlays.default imnyang.overlays.default
]; ];
installer = mkHost ./hosts/installer overlays;
# Server # Server
hikari = mkHost ./hosts/server/hikari/default overlays; hikari = mkHost ./hosts/server/hikari/default overlays;

View file

@ -0,0 +1,37 @@
{
inputs,
overlays,
}:
let
inherit (inputs) nixpkgs;
in
nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
"${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix"
"${inputs.self}/modules/mizukios/base"
({ pkgs, ... }: {
environment.systemPackages = with pkgs; [
fastfetch
git
neovim
ghostty
cryptsetup
lvm2
sbctl
];
security.sudo.enable = false;
environment.etc.flake.source = "${inputs.self}";
})
];
specialArgs = {
inherit inputs overlays;
};
}

View file

@ -8,22 +8,22 @@
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/system/boot.nix" "${inputs.self}/modules/mizukios/features/system/boot.nix"
"${inputs.self}/modules/nixos/features/fonts.nix" "${inputs.self}/modules/mizukios/features/fonts.nix"
"${inputs.self}/modules/nixos/features/plasma.nix" "${inputs.self}/modules/mizukios/features/plasma.nix"
"${inputs.self}/modules/nixos/features/system/sound.nix" "${inputs.self}/modules/mizukios/features/system/sound.nix"
"${inputs.self}/modules/nixos/features/packages.nix" "${inputs.self}/modules/mizukios/features/packages.nix"
"${inputs.self}/modules/nixos/features/catppuccin.nix" "${inputs.self}/modules/mizukios/features/catppuccin.nix"
"${inputs.self}/modules/nixos/features/figma-agent.nix" "${inputs.self}/modules/mizukios/features/figma-agent.nix"
"${inputs.self}/modules/nixos/features/system/sbctl.nix" "${inputs.self}/modules/mizukios/features/system/sbctl.nix"
"${inputs.self}/modules/nixos/features/system/grub-standalone.nix" "${inputs.self}/modules/mizukios/features/system/grub-standalone.nix"
"${inputs.self}/modules/nixos/features/system/virtualisation.nix" "${inputs.self}/modules/mizukios/features/system/virtualisation.nix"
"${inputs.self}/modules/nixos/features/management/cockpit.nix" "${inputs.self}/modules/mizukios/features/management/cockpit.nix"
"${inputs.self}/modules/nixos/features/system/bluetooth.nix" "${inputs.self}/modules/mizukios/features/system/bluetooth.nix"
"${inputs.self}/modules/nixos/features/system/graphics.nix" "${inputs.self}/modules/mizukios/features/system/graphics.nix"
"${inputs.self}/modules/nixos/features/steam.nix" "${inputs.self}/modules/mizukios/features/steam.nix"
"${inputs.self}/modules/nixos/features/remote/ssh.nix" "${inputs.self}/modules/mizukios/features/remote/ssh.nix"
]; ];
networking = { networking = {

View file

@ -15,7 +15,6 @@
cat = "bat --plain"; cat = "bat --plain";
# NixOS 관련
rebuild = "nr"; rebuild = "nr";
update = "nix flake update"; update = "nix flake update";
clean = "sudo nix-collect-garbage -d"; clean = "sudo nix-collect-garbage -d";

View file

@ -1,6 +1,6 @@
{ pkgs, inputs, ... }: { pkgs, inputs, ... }:
let let
dr = import ../../../../modules/nixos/features/packages/dr.nix { inherit pkgs; }; dr = import ../../../../modules/mizukios/features/packages/dr.nix { inherit pkgs; };
in in
with pkgs; with pkgs;
[ [

View file

@ -3,16 +3,16 @@
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/system/boot.nix" "${inputs.self}/modules/mizukios/features/system/boot.nix"
"${inputs.self}/modules/nixos/features/fonts.nix" "${inputs.self}/modules/mizukios/features/fonts.nix"
"${inputs.self}/modules/nixos/features/packages.nix" "${inputs.self}/modules/mizukios/features/packages.nix"
"${inputs.self}/modules/nixos/features/plasma.nix" "${inputs.self}/modules/mizukios/features/plasma.nix"
"${inputs.self}/modules/nixos/features/sound.nix" "${inputs.self}/modules/mizukios/features/system/sound.nix"
"${inputs.self}/modules/nixos/features/catppuccin.nix" "${inputs.self}/modules/mizukios/features/catppuccin.nix"
"${inputs.self}/modules/nixos/features/ssh.nix" "${inputs.self}/modules/mizukios/features/remote/ssh.nix"
"${inputs.self}/modules/nixos/features/steam.nix" "${inputs.self}/modules/mizukios/features/steam.nix"
"${inputs.self}/modules/nixos/features/sunshine.nix" "${inputs.self}/modules/mizukios/features/remote/sunshine.nix"
]; ];
networking = { networking = {

View file

@ -59,6 +59,8 @@
}; };
services.xserver.videoDrivers = [ "nvidia" ]; services.xserver.videoDrivers = [ "nvidia" ];
networking.interfaces.enp3s0.wakeOnLan.enable = true;
hardware.graphics = { hardware.graphics = {
enable = true; enable = true;
enable32Bit = true; enable32Bit = true;

View file

@ -3,21 +3,21 @@
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/system/boot.nix" "${inputs.self}/modules/mizukios/features/system/boot.nix"
"${inputs.self}/modules/nixos/features/fonts.nix" "${inputs.self}/modules/mizukios/features/fonts.nix"
"${inputs.self}/modules/nixos/features/packages.nix" "${inputs.self}/modules/mizukios/features/packages.nix"
"${inputs.self}/modules/nixos/features/plasma.nix" "${inputs.self}/modules/mizukios/features/plasma.nix"
"${inputs.self}/modules/nixos/features/system/sound.nix" "${inputs.self}/modules/mizukios/features/system/sound.nix"
"${inputs.self}/modules/nixos/features/catppuccin.nix" "${inputs.self}/modules/mizukios/features/catppuccin.nix"
"${inputs.self}/modules/nixos/features/figma-agent.nix" "${inputs.self}/modules/mizukios/features/figma-agent.nix"
"${inputs.self}/modules/nixos/features/management/cockpit.nix" "${inputs.self}/modules/mizukios/features/management/cockpit.nix"
"${inputs.self}/modules/nixos/features/system/bluetooth.nix" "${inputs.self}/modules/mizukios/features/system/bluetooth.nix"
"${inputs.self}/modules/nixos/features/system/graphics.nix" "${inputs.self}/modules/mizukios/features/system/graphics.nix"
"${inputs.self}/modules/nixos/features/remote/ssh.nix" "${inputs.self}/modules/mizukios/features/remote/ssh.nix"
"${inputs.self}/modules/nixos/features/system/virtualisation.nix" "${inputs.self}/modules/mizukios/features/system/virtualisation.nix"
"${inputs.self}/modules/nixos/features/steam.nix" "${inputs.self}/modules/mizukios/features/steam.nix"
"${inputs.self}/modules/nixos/features/remote/sunshine.nix" "${inputs.self}/modules/mizukios/features/remote/sunshine.nix"
]; ];
networking = { networking = {

View file

@ -51,6 +51,7 @@
"${inputs.self}/modules/home/devtool/ghostty.nix" "${inputs.self}/modules/home/devtool/ghostty.nix"
"${inputs.self}/modules/home/devtool/zed.nix" "${inputs.self}/modules/home/devtool/zed.nix"
"${inputs.self}/modules/home/vicinae.nix" "${inputs.self}/modules/home/vicinae.nix"
"${inputs.self}/modules/home/fastfetch.nix"
./config/shell.nix ./config/shell.nix
./config/plasma.nix ./config/plasma.nix
"${inputs.self}/modules/home/discord/linux.nix" "${inputs.self}/modules/home/discord/linux.nix"

View file

@ -1,8 +1,8 @@
{ pkgs, inputs, ... }: { pkgs, inputs, ... }:
{ {
imports = [ imports = [
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/ssh.nix" "${inputs.self}/modules/mizukios/features/ssh.nix"
]; ];
wsl.enable = true; wsl.enable = true;

View file

@ -1,10 +1,10 @@
{ pkgs, inputs }: { pkgs, inputs }:
let let
nr = import "${inputs.self}/modules/nixos/features/packages/nr.nix" { inherit pkgs; }; nr = import "${inputs.self}/modules/mizukios/features/packages/nr.nix" { inherit pkgs; };
nrr = import "${inputs.self}/modules/nixos/features/packages/nrr.nix" { inherit pkgs; }; nrr = import "${inputs.self}/modules/mizukios/features/packages/nrr.nix" { inherit pkgs; };
in in
with pkgs; with pkgs;
[ [
nr nr
nrr nrr
] ]

View file

@ -2,11 +2,11 @@
{ {
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/management/cockpit.nix" "${inputs.self}/modules/mizukios/features/management/cockpit.nix"
"${inputs.self}/modules/nixos/features/system/boot.nix" "${inputs.self}/modules/mizukios/features/system/boot.nix"
"${inputs.self}/modules/nixos/features/remote/ssh.nix" "${inputs.self}/modules/mizukios/features/remote/ssh.nix"
"${inputs.self}/modules/nixos/features/management/podman.nix" "${inputs.self}/modules/mizukios/features/management/podman.nix"
./services/rustfs.nix ./services/rustfs.nix
./services/nextcloud.nix ./services/nextcloud.nix

View file

@ -4,8 +4,8 @@
... ...
}: }:
let let
nr = import "${inputs.self}/modules/nixos/features/packages/nr.nix" { inherit pkgs; }; nr = import "${inputs.self}/modules/mizukios/features/packages/nr.nix" { inherit pkgs; };
nrr = import "${inputs.self}/modules/nixos/features/packages/nrr.nix" { inherit pkgs; }; nrr = import "${inputs.self}/modules/mizukios/features/packages/nrr.nix" { inherit pkgs; };
in in
{ {
home.stateVersion = "26.05"; home.stateVersion = "26.05";

View file

@ -2,10 +2,10 @@
{ {
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/system/boot.nix" "${inputs.self}/modules/mizukios/features/system/boot.nix"
"${inputs.self}/modules/nixos/features/remote/ssh.nix" "${inputs.self}/modules/mizukios/features/remote/ssh.nix"
"${inputs.self}/modules/nixos/features/management/docker.nix" "${inputs.self}/modules/mizukios/features/management/docker.nix"
]; ];
# 1. 크론 설정 # 1. 크론 설정

View file

@ -4,8 +4,8 @@
... ...
}: }:
let let
nr = import "${inputs.self}/modules/nixos/features/packages/nr.nix" { inherit pkgs; }; nr = import "${inputs.self}/modules/mizukios/features/packages/nr.nix" { inherit pkgs; };
nrr = import "${inputs.self}/modules/nixos/features/packages/nrr.nix" { inherit pkgs; }; nrr = import "${inputs.self}/modules/mizukios/features/packages/nrr.nix" { inherit pkgs; };
in in
{ {
home.stateVersion = "26.05"; home.stateVersion = "26.05";

View file

@ -6,10 +6,10 @@
}: }:
{ {
imports = [ imports = [
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/system/boot.nix" "${inputs.self}/modules/mizukios/features/system/boot.nix"
"${inputs.self}/modules/nixos/features/remote/ssh.nix" "${inputs.self}/modules/mizukios/features/remote/ssh.nix"
"${inputs.self}/modules/nixos/features/management/docker.nix" "${inputs.self}/modules/mizukios/features/management/docker.nix"
./services/mailserver.nix ./services/mailserver.nix
./services/caddy.nix ./services/caddy.nix
]; ];

View file

@ -5,8 +5,8 @@
... ...
}: }:
let let
nr = import "${inputs.self}/modules/nixos/features/packages/nr.nix" { inherit pkgs; }; nr = import "${inputs.self}/modules/mizukios/features/packages/nr.nix" { inherit pkgs; };
nrr = import "${inputs.self}/modules/nixos/features/packages/nrr.nix" { inherit pkgs; }; nrr = import "${inputs.self}/modules/mizukios/features/packages/nrr.nix" { inherit pkgs; };
in in
{ {
home.stateVersion = "26.05"; home.stateVersion = "26.05";

View file

@ -2,10 +2,10 @@
{ {
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
"${inputs.self}/modules/nixos/base" "${inputs.self}/modules/mizukios/base"
"${inputs.self}/modules/nixos/features/system/boot.nix" "${inputs.self}/modules/mizukios/features/system/boot.nix"
"${inputs.self}/modules/nixos/features/remote/ssh.nix" "${inputs.self}/modules/mizukios/features/remote/ssh.nix"
"${inputs.self}/modules/nixos/features/management/docker.nix" "${inputs.self}/modules/mizukios/features/management/docker.nix"
]; ];
virtualisation.docker.daemon.settings = { virtualisation.docker.daemon.settings = {

View file

@ -5,8 +5,8 @@
... ...
}: }:
let let
nr = import "${inputs.self}/modules/nixos/features/packages/nr.nix" { inherit pkgs; }; nr = import "${inputs.self}/modules/mizukios/features/packages/nr.nix" { inherit pkgs; };
nrr = import "${inputs.self}/modules/nixos/features/packages/nrr.nix" { inherit pkgs; }; nrr = import "${inputs.self}/modules/mizukios/features/packages/nrr.nix" { inherit pkgs; };
in in
{ {
home.stateVersion = "26.05"; home.stateVersion = "26.05";

View file

@ -116,7 +116,7 @@ in
''; '';
virtualHosts."plutos.dazzle.st".extraConfig = '' virtualHosts."plutos.dazzle.st".extraConfig = ''
reverse_proxy epc.hikari.mizuki.arpa:3000 reverse_proxy localhost:13000
''; '';
virtualHosts."event.dazzle.st".extraConfig = '' virtualHosts."event.dazzle.st".extraConfig = ''

View file

@ -0,0 +1,51 @@
{
lib,
pkgs,
...
}:
let
mizukios-logo = pkgs.callPackage ../mizukios/base/mizukios/assets/mizukios-logo.nix { };
in
{
config = lib.mkIf pkgs.stdenv.isLinux {
programs.fastfetch = {
enable = true;
settings = {
logo.source = "${mizukios-logo}/share/pixmaps/mizukios-mini.png";
modules = [
"title"
"separator"
"os"
"host"
"kernel"
"uptime"
"packages"
"shell"
"display"
"de"
"wm"
"wmtheme"
"theme"
"icons"
"font"
"cursor"
"terminal"
"terminalfont"
"cpu"
"gpu"
"memory"
"swap"
"disk"
"localip"
"battery"
"poweradapter"
"locale"
"break"
"colors"
];
};
};
};
}

View file

@ -5,5 +5,6 @@
./user.nix ./user.nix
./i18n.nix ./i18n.nix
./packages.nix ./packages.nix
./mizukios
]; ];
} }

View file

@ -1,9 +1,7 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
# 시간대 설정
time.timeZone = "Asia/Seoul"; time.timeZone = "Asia/Seoul";
# 로케일 설정 (영어 기본 + 한국 로케일)
i18n = { i18n = {
defaultLocale = "en_US.UTF-8"; defaultLocale = "en_US.UTF-8";
extraLocaleSettings = { extraLocaleSettings = {

View file

@ -0,0 +1,33 @@
{
stdenvNoCC,
fetchurl,
imagemagick,
}:
stdenvNoCC.mkDerivation {
pname = "mizukios-logo";
version = "1.0";
src = fetchurl {
url = "https://miyo.moe/pub/img/%E1%84%86%E1%85%B5%E1%84%8C%E1%85%B3%E1%84%8F%E1%85%B5.png";
hash = "sha256-ZHQkYO4HvBjccXtQGTRcNcl7f1noibOTP6Cq71OKFP4=";
};
nativeBuildInputs = [
imagemagick
];
dontUnpack = true;
# unpackPhase = ":";
installPhase = ''
runHook preInstall
mkdir -p $out/share/pixmaps
mkdir -p $out/share/icons/hicolor/scalable/apps
cp $src $out/share/pixmaps/mizukios.png
cp $src $out/share/icons/hicolor/scalable/apps/mizukios.png
magick $src \
-resize "512x512" \
$out/share/pixmaps/mizukios-mini.png
'';
}

View file

@ -0,0 +1,16 @@
{ pkgs, ... }:
let
mizukios-logo = pkgs.callPackage ./assets/mizukios-logo.nix { };
in
{
system.nixos = {
distroName = "MizukiOS";
distroId = "mizukios";
extraOSReleaseArgs = {
LOGO = "mizukios";
};
};
environment.systemPackages = [ mizukios-logo ];
}