Compare commits

..
12 Commits
19 changed files with 192 additions and 94 deletions
+10
View File
@@ -1,7 +1,17 @@
# 🌽❄ # 🌽❄
初回(`nh` 導入前):
``` ```
sudo nixos-rebuild switch --flake .#<host> sudo nixos-rebuild switch --flake .#<host>
nix run .#home-manager -- switch --flake .#<username>@<host> nix run .#home-manager -- switch --flake .#<username>@<host>
``` ```
`nh` 導入後:
```
nh os switch
nh home switch
```
Generated
+44 -23
View File
@@ -5,11 +5,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1731533236, "lastModified": 1791914995,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "narHash": "sha256-Zf/xfQEAasnwnmEfHqW/4hjDE/s44yn2hD4RuVIZRjA=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "rev": "b7a79d3fea1e214f6d668d521cecec0c01e26544",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -61,11 +61,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1784489491, "lastModified": 1792098797,
"narHash": "sha256-j9maqjx1T8+ljAVntAdSI5hSGCm77QNZz64JF1rJNu0=", "narHash": "sha256-u4DIIZgznEGzByxXrxWCXK19VcMtTBmi/M9gZ7Jk9bM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "3139deb8cafbe73b39b24451255b2fdd3426077e", "rev": "640725978b99076e18e069f6e7d2959124584f8f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -81,11 +81,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1784440659, "lastModified": 1791711434,
"narHash": "sha256-Q5kNLlWngt7TaIIZoxDKWMHjiSaNRVqr70FqWCRRfr4=", "narHash": "sha256-LpIhxnuO0tYeZ4k7BbNMxsPs2zJpB4hWXO1jdhUuE7Q=",
"owner": "Mic92", "owner": "Mic92",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "4f8d52a3598b0dc7db7a5e7b419e3edd9d1ecfdb", "rev": "9a2dd40780eeab8543aa97c59c26f11267025616",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -99,11 +99,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1784310968, "lastModified": 1791721963,
"narHash": "sha256-rkSPTePrKqs4dg+i7ZFCq93+HrClac6oSwXX927SVjA=", "narHash": "sha256-BYhx89XJltnRyQeuDKHVL5eSqbbfAcOKuDts7QRsrxQ=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "779c32a00155994c86cde8213a8dd4df139d4355", "rev": "60a624466c08787ee8303393b7d4752d1826f14f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -114,11 +114,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1767892417, "lastModified": 1789546076,
"narHash": "sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U=", "narHash": "sha256-vWkSk5bbfTqdtMoSgD9FshACO8JCvXTFi+3cqEp0mH0=",
"rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba", "rev": "b1b875982b17dabde9b4a37f3e229e74913e6db3",
"type": "tarball", "type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre924538.3497aa5c9457/nixexprs.tar.xz" "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1074753.b1b875982b17/nixexprs.tar.xz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@@ -127,11 +127,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1784356753, "lastModified": 1791956154,
"narHash": "sha256-12KrbMiWLcf8m7pCvAtZh1ZrgF85ZXDXvfR/fWTKy84=", "narHash": "sha256-jBYGPi4udQ9uo4KQp9m2J0546nJVQitG15gvZSaVVAs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "61b7c44c4073f0b827768aff0049561b5110ea5a", "rev": "55bfb4d7437bd4e09ab7cba58a43bd68eb310044",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -196,11 +196,32 @@
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"shojiwm": "shojiwm",
"tourbox-linux": "tourbox-linux", "tourbox-linux": "tourbox-linux",
"yoi": "yoi", "yoi": "yoi",
"zen-browser": "zen-browser" "zen-browser": "zen-browser"
} }
}, },
"shojiwm": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1792040296,
"narHash": "sha256-ZneGdoGW0iheFj8G8snUHqfhOt0DfdtjpmJCI/Bfg5U=",
"owner": "bea4dev",
"repo": "ShojiWM",
"rev": "98f84845ebbaabf0cd847d7dc5ac628e5adfccce",
"type": "github"
},
"original": {
"owner": "bea4dev",
"repo": "ShojiWM",
"type": "github"
}
},
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,
@@ -271,11 +292,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1784328575, "lastModified": 1792060900,
"narHash": "sha256-4LdSQBnOPZ82otj2go33qAtDUcVtWFRmMvfgKdQO9Ys=", "narHash": "sha256-ymqMufudzSv63RXiAvcaeWGPZeKzkHljLzh7dMiDyOU=",
"ref": "develop", "ref": "develop",
"rev": "37c44a7942776ce43d21f0aa55e55006de1aa6a4", "rev": "885e8045feaf236ac447652cf247e2d5d40f07c6",
"revCount": 3343, "revCount": 4940,
"type": "git", "type": "git",
"url": "ssh://git@gitea.hareworks.net/Hare/yoi.git" "url": "ssh://git@gitea.hareworks.net/Hare/yoi.git"
}, },
+3
View File
@@ -13,6 +13,9 @@
yoi.url = "git+ssh://git@gitea.hareworks.net/Hare/yoi.git?ref=develop"; yoi.url = "git+ssh://git@gitea.hareworks.net/Hare/yoi.git?ref=develop";
tourbox-linux.url = "github:HareK02/TourBox-Linux"; tourbox-linux.url = "github:HareK02/TourBox-Linux";
shojiwm.url = "github:bea4dev/ShojiWM";
shojiwm.inputs.nixpkgs.follows = "nixpkgs";
nix-index-database.url = "github:Mic92/nix-index-database"; nix-index-database.url = "github:Mic92/nix-index-database";
nix-index-database.inputs.nixpkgs.follows = "nixpkgs"; nix-index-database.inputs.nixpkgs.follows = "nixpkgs";
}; };
+20
View File
@@ -0,0 +1,20 @@
{ pkgs, ... }:
{
home.packages = [ pkgs.jre ];
xdg.desktopEntries.java = {
name = "Java";
genericName = "JAR Launcher";
exec = "${pkgs.jre}/bin/java -jar %f";
terminal = false;
mimeType = [
"application/java-archive"
"application/x-java-archive"
];
};
xdg.mimeApps.defaultApplications = {
"application/java-archive" = "java.desktop";
"application/x-java-archive" = "java.desktop";
};
}
+1 -2
View File
@@ -1,4 +1,4 @@
{ config, pkgs, ... }: { pkgs, ... }:
{ {
programs.obs-studio = { programs.obs-studio = {
enable = true; enable = true;
@@ -6,7 +6,6 @@
wlrobs wlrobs
obs-backgroundremoval obs-backgroundremoval
obs-pipewire-audio-capture obs-pipewire-audio-capture
obs-shaderfilter
]; ];
}; };
} }
+32
View File
@@ -0,0 +1,32 @@
{ pkgs, ... }:
{
xdg.configFile."pipewire/pipewire.conf.d/virtual-pipe.conf".text = ''
context.objects = [
{ factory = adapter
args = {
factory.name = support.null-audio-sink
node.name = "vpipe_sink"
node.description = "Virtual Pipe Input"
media.class = Audio/Sink
object.linger = true
audio.position = [ FL FR ]
}
}
{ factory = adapter
args = {
factory.name = support.null-audio-sink
node.name = "vpipe_source"
node.description = "Virtual Pipe Output"
media.class = Audio/Source/Virtual
object.linger = true
audio.position = [ FL FR ]
}
}
]
context.exec = [
{ path = "${pkgs.pipewire}/bin/pw-link" args = "vpipe_sink:monitor_FL vpipe_source:input_FL" }
{ path = "${pkgs.pipewire}/bin/pw-link" args = "vpipe_sink:monitor_FR vpipe_source:input_FR" }
]
'';
}
-11
View File
@@ -1,11 +0,0 @@
{ pkgs, ... }:
{
programs.vscode = {
enable = true;
package = pkgs.vscode.fhs;
profiles.default = {
extensions = with pkgs.vscode-extensions; [
];
};
};
}
+1
View File
@@ -41,6 +41,7 @@ local config = {
keys = { keys = {
{ key = 'V', mods = 'CTRL', action = wezterm.action.PasteFrom 'Clipboard' }, { key = 'V', mods = 'CTRL', action = wezterm.action.PasteFrom 'Clipboard' },
{ key = 'Enter', mods = 'ALT', action = wezterm.action.DisableDefaultAssignment },
} }
} }
+1
View File
@@ -14,6 +14,7 @@ mkHost {
]; ];
systemModules = [ systemModules = [
inputs.tourbox-linux.nixosModules.default inputs.tourbox-linux.nixosModules.default
# inputs.shojiwm.nixosModules.default
./nixos.nix ./nixos.nix
]; ];
} }
+38 -16
View File
@@ -1,4 +1,5 @@
{ {
config,
pkgs, pkgs,
inputs, inputs,
lib, lib,
@@ -13,12 +14,13 @@
../../../home-manager/fnott.nix ../../../home-manager/fnott.nix
../../../home-manager/wezterm ../../../home-manager/wezterm
../../../home-manager/fish ../../../home-manager/fish
../../../home-manager/vscode.nix
../../../home-manager/direnv.nix ../../../home-manager/direnv.nix
../../../home-manager/firefox.nix ../../../home-manager/firefox.nix
../../../home-manager/obs-studio.nix ../../../home-manager/obs-studio.nix
../../../home-manager/pipewire.nix
../../../home-manager/zeditor.nix ../../../home-manager/zeditor.nix
../../../home-manager/blender.nix ../../../home-manager/blender.nix
../../../home-manager/java.nix
# ../../../home-manager/voicevox.nix # ../../../home-manager/voicevox.nix
]; ];
@@ -36,21 +38,20 @@
scale = 1; scale = 1;
transform = 0; transform = 0;
} }
# {
# output = "DP-3";
# mode = "1920x1080@60";
# position = "0x0";
# scale = 0.75;
# transform = 0;
# mirror = "DP-1";
# }
{ {
output = "DP-3"; output = "DP-3";
mode = "1920x1080@144"; mode = "1920x1080@300";
position = "-1080x-240"; position = "-1920x180";
scale = 1; scale = 1;
transform = 1; transform = 0;
} }
# {
# output = "DP-3";
# mode = "1920x1080@144";
# position = "-1080x-240";
# scale = 1;
# transform = 1;
# }
]; ];
hare.hyprland = { hare.hyprland = {
input.sensitivity = -1.0; input.sensitivity = -1.0;
@@ -59,7 +60,28 @@
programs.nix-index-database.comma.enable = true; programs.nix-index-database.comma.enable = true;
xdg.configFile."sccache/config" = {
force = true;
text = ''
[cache.disk]
dir = "${config.xdg.cacheHome}/sccache"
size = 42949672960
'';
};
systemd.user.services.sccache = {
Unit.Description = "sccache compilation cache server";
Service = {
Type = "oneshot";
RemainAfterExit = true;
ExecStart = "${pkgs.sccache}/bin/sccache --start-server";
ExecStop = "${pkgs.sccache}/bin/sccache --stop-server";
};
Install.WantedBy = [ "default.target" ];
};
home.packages = with pkgs; [ home.packages = with pkgs; [
sccache
vivaldi vivaldi
google-chrome google-chrome
discord discord
@@ -69,7 +91,7 @@
nodejs nodejs
scrcpy scrcpy
tetrio-desktop tetrio-desktop
kicad # kicad
gimp gimp
inkscape inkscape
obsidian obsidian
@@ -82,9 +104,9 @@
nixd nixd
rust-analyzer rust-analyzer
aseprite aseprite
bambu-studio # bambu-studio
orca-slicer # orca-slicer
davinci-resolve # davinci-resolve
inputs.zen-browser.packages."${stdenv.hostPlatform.system}".default inputs.zen-browser.packages."${stdenv.hostPlatform.system}".default
# inputs.yoi.packages.${stdenv.hostPlatform.system}.default # inputs.yoi.packages.${stdenv.hostPlatform.system}.default
]; ];
+15 -11
View File
@@ -1,4 +1,4 @@
{ pkgs, ... }: { lib, pkgs, ... }:
let let
config.boot.kernelPackages = pkgs.linuxPackages_latest; config.boot.kernelPackages = pkgs.linuxPackages_latest;
in in
@@ -36,9 +36,6 @@ in
../../programs/steam.nix ../../programs/steam.nix
]; ];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
cargo
rustc
rustfmt
openssl openssl
vulkan-tools vulkan-tools
android-tools android-tools
@@ -49,13 +46,6 @@ in
rocmPackages.clr rocmPackages.clr
rocmPackages.rocm-smi rocmPackages.rocm-smi
qemu
(pkgs.writeShellScriptBin "qemu-system-x86_64-uefi" ''
qemu-system-x86_64 \
-bios ${pkgs.OVMF.fd}/FV/OVMF.fd \
"$@"
'')
wineWow64Packages.waylandFull wineWow64Packages.waylandFull
winetricks winetricks
@@ -69,6 +59,14 @@ in
]; ];
environment.sessionVariables.NIXOS_OZONE_WL = "1"; environment.sessionVariables.NIXOS_OZONE_WL = "1";
# programs.shojiwm = {
# enable = true;
# initConfig = {
# enable = true;
# users = [ "hare" ];
# };
# };
programs.nix-ld.enable = true; programs.nix-ld.enable = true;
services.openssh.enable = true; services.openssh.enable = true;
@@ -91,6 +89,7 @@ in
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="input" KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="input"
''; '';
services.tourbox-linux.enable = true; services.tourbox-linux.enable = true;
systemd.services.tourbox-linux.reloadIfChanged = lib.mkForce false;
hardware.bluetooth = { hardware.bluetooth = {
enable = true; enable = true;
@@ -113,6 +112,11 @@ in
}; };
}; };
systemd.coredump.settings.Coredump = {
Storage = "none";
ProcessSizeMax = "0";
};
boot.kernelPackages = config.boot.kernelPackages; boot.kernelPackages = config.boot.kernelPackages;
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ]; boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
boot.kernelModules = [ boot.kernelModules = [
+6 -1
View File
@@ -5,6 +5,11 @@ rec {
x1carbon = import ./x1carbon inputs; x1carbon = import ./x1carbon inputs;
fungus = import ./fungus inputs; fungus = import ./fungus inputs;
}; };
nixos = builtins.mapAttrs (_: host: host.nixos) hosts; nixos = builtins.listToAttrs (
map (host: {
name = host.hostname;
value = host.nixos;
}) (builtins.attrValues hosts)
);
home-manager = builtins.foldl' (a: b: a // b) { } (map (h: h.home-manager) (builtins.attrValues hosts)); home-manager = builtins.foldl' (a: b: a // b) { } (map (h: h.home-manager) (builtins.attrValues hosts));
} }
+2
View File
@@ -12,6 +12,8 @@ let
}; };
in in
{ {
inherit hostname;
nixos = inputs.nixpkgs.lib.nixosSystem { nixos = inputs.nixpkgs.lib.nixosSystem {
modules = modules =
systemModules systemModules
-11
View File
@@ -11,7 +11,6 @@
../../../home-manager/tofi.nix ../../../home-manager/tofi.nix
../../../home-manager/fnott.nix ../../../home-manager/fnott.nix
../../../home-manager/direnv.nix ../../../home-manager/direnv.nix
../../../home-manager/obs-studio.nix
../../../home-manager/wezterm ../../../home-manager/wezterm
../../../home-manager/fish ../../../home-manager/fish
]; ];
@@ -25,18 +24,8 @@
discord discord
plemoljp plemoljp
plemoljp-nf plemoljp-nf
prismlauncher
scrcpy
gimp
zed-editor zed-editor
deno
nodejs_latest
# aseprite
]; ];
services.easyeffects = {
enable = true;
};
programs.git = { programs.git = {
enable = true; enable = true;
settings.user.name = "Hare"; settings.user.name = "Hare";
+1 -3
View File
@@ -1,11 +1,9 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
extraGroups = [
"docker"
];
shell = pkgs.fish; shell = pkgs.fish;
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIfql/a6ZtxOPgBhFzOfgTO6HGcy0Se9mgMLmOa40vMF" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIfql/a6ZtxOPgBhFzOfgTO6HGcy0Se9mgMLmOa40vMF"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIW2Yrqwi4YjIrdI8mygX5pTHDPmrUgbmpZ4WxoTqORi keihi@Vostro-LapTop" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIW2Yrqwi4YjIrdI8mygX5pTHDPmrUgbmpZ4WxoTqORi keihi@Vostro-LapTop"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBd45JtvgM44KUqhp3Xl2Wtt6rmxU13c/84YLyGKigkG hare@nixos"
]; ];
} }
-7
View File
@@ -12,11 +12,8 @@ in
../../programs/ssh.nix ../../programs/ssh.nix
../../programs/utility.nix ../../programs/utility.nix
../../programs/shell.nix ../../programs/shell.nix
../../programs/docker.nix
../../programs/v4l2.nix
../../programs/desktop/hyprland.nix ../../programs/desktop/hyprland.nix
../../programs/fcitx.nix ../../programs/fcitx.nix
../../programs/steam.nix
]; ];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
openssl openssl
@@ -77,10 +74,6 @@ in
}; };
boot.kernelPackages = config.boot.kernelPackages; boot.kernelPackages = config.boot.kernelPackages;
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
boot.kernelModules = [
"v4l2loopback"
];
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
+2 -4
View File
@@ -38,9 +38,7 @@ let
}) })
hl.on("hyprland.start", function() hl.on("hyprland.start", function()
hl.exec_cmd("${ hl.exec_cmd("${config.services.displayManager.regreet.package}/bin/regreet; ${pkgs.hyprland}/bin/hyprctl dispatch 'hl.dsp.exit()'")
config.programs.regreet.package or pkgs.regreet
}/bin/regreet; ${pkgs.hyprland}/bin/hyprctl dispatch 'hl.dsp.exit()'")
end) end)
''; '';
in in
@@ -62,7 +60,7 @@ in
rosePineHyprcursor rosePineHyprcursor
]; ];
programs.regreet = { services.displayManager.regreet = {
# greetd を Hyprland で動かす # greetd を Hyprland で動かす
enable = true; enable = true;
theme.name = "Adwaita-dark"; theme.name = "Adwaita-dark";
+5
View File
@@ -13,5 +13,10 @@
}; };
}; };
programs.nh = {
enable = true;
flake = "/home/hare/cornflake";
};
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
} }
+11 -5
View File
@@ -1,11 +1,17 @@
{ config, ... }:
{ {
imports = [ imports = [
./theme-switcher.nix ./theme-switcher.nix
]; ];
home.activation = { programs.nh = {
makedir = '' enable = true;
mkdir -p ~/.config/cornflake flake = "${config.home.homeDirectory}/cornflake";
''; };
};
home.activation = {
makedir = ''
mkdir -p ~/.config/cornflake
'';
};
} }