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>
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"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"lastModified": 1791914995,
"narHash": "sha256-Zf/xfQEAasnwnmEfHqW/4hjDE/s44yn2hD4RuVIZRjA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"rev": "b7a79d3fea1e214f6d668d521cecec0c01e26544",
"type": "github"
},
"original": {
@@ -61,11 +61,11 @@
]
},
"locked": {
"lastModified": 1784489491,
"narHash": "sha256-j9maqjx1T8+ljAVntAdSI5hSGCm77QNZz64JF1rJNu0=",
"lastModified": 1792098797,
"narHash": "sha256-u4DIIZgznEGzByxXrxWCXK19VcMtTBmi/M9gZ7Jk9bM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "3139deb8cafbe73b39b24451255b2fdd3426077e",
"rev": "640725978b99076e18e069f6e7d2959124584f8f",
"type": "github"
},
"original": {
@@ -81,11 +81,11 @@
]
},
"locked": {
"lastModified": 1784440659,
"narHash": "sha256-Q5kNLlWngt7TaIIZoxDKWMHjiSaNRVqr70FqWCRRfr4=",
"lastModified": 1791711434,
"narHash": "sha256-LpIhxnuO0tYeZ4k7BbNMxsPs2zJpB4hWXO1jdhUuE7Q=",
"owner": "Mic92",
"repo": "nix-index-database",
"rev": "4f8d52a3598b0dc7db7a5e7b419e3edd9d1ecfdb",
"rev": "9a2dd40780eeab8543aa97c59c26f11267025616",
"type": "github"
},
"original": {
@@ -99,11 +99,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1784310968,
"narHash": "sha256-rkSPTePrKqs4dg+i7ZFCq93+HrClac6oSwXX927SVjA=",
"lastModified": 1791721963,
"narHash": "sha256-BYhx89XJltnRyQeuDKHVL5eSqbbfAcOKuDts7QRsrxQ=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "779c32a00155994c86cde8213a8dd4df139d4355",
"rev": "60a624466c08787ee8303393b7d4752d1826f14f",
"type": "github"
},
"original": {
@@ -114,11 +114,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1767892417,
"narHash": "sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U=",
"rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba",
"lastModified": 1789546076,
"narHash": "sha256-vWkSk5bbfTqdtMoSgD9FshACO8JCvXTFi+3cqEp0mH0=",
"rev": "b1b875982b17dabde9b4a37f3e229e74913e6db3",
"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": {
"type": "tarball",
@@ -127,11 +127,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1784356753,
"narHash": "sha256-12KrbMiWLcf8m7pCvAtZh1ZrgF85ZXDXvfR/fWTKy84=",
"lastModified": 1791956154,
"narHash": "sha256-jBYGPi4udQ9uo4KQp9m2J0546nJVQitG15gvZSaVVAs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "61b7c44c4073f0b827768aff0049561b5110ea5a",
"rev": "55bfb4d7437bd4e09ab7cba58a43bd68eb310044",
"type": "github"
},
"original": {
@@ -196,11 +196,32 @@
"nix-index-database": "nix-index-database",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2",
"shojiwm": "shojiwm",
"tourbox-linux": "tourbox-linux",
"yoi": "yoi",
"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": {
"locked": {
"lastModified": 1681028828,
@@ -271,11 +292,11 @@
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1784328575,
"narHash": "sha256-4LdSQBnOPZ82otj2go33qAtDUcVtWFRmMvfgKdQO9Ys=",
"lastModified": 1792060900,
"narHash": "sha256-ymqMufudzSv63RXiAvcaeWGPZeKzkHljLzh7dMiDyOU=",
"ref": "develop",
"rev": "37c44a7942776ce43d21f0aa55e55006de1aa6a4",
"revCount": 3343,
"rev": "885e8045feaf236ac447652cf247e2d5d40f07c6",
"revCount": 4940,
"type": "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";
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.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 = {
enable = true;
@@ -6,7 +6,6 @@
wlrobs
obs-backgroundremoval
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 = {
{ 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 = [
inputs.tourbox-linux.nixosModules.default
# inputs.shojiwm.nixosModules.default
./nixos.nix
];
}
+38 -16
View File
@@ -1,4 +1,5 @@
{
config,
pkgs,
inputs,
lib,
@@ -13,12 +14,13 @@
../../../home-manager/fnott.nix
../../../home-manager/wezterm
../../../home-manager/fish
../../../home-manager/vscode.nix
../../../home-manager/direnv.nix
../../../home-manager/firefox.nix
../../../home-manager/obs-studio.nix
../../../home-manager/pipewire.nix
../../../home-manager/zeditor.nix
../../../home-manager/blender.nix
../../../home-manager/java.nix
# ../../../home-manager/voicevox.nix
];
@@ -36,21 +38,20 @@
scale = 1;
transform = 0;
}
# {
# output = "DP-3";
# mode = "1920x1080@60";
# position = "0x0";
# scale = 0.75;
# transform = 0;
# mirror = "DP-1";
# }
{
output = "DP-3";
mode = "1920x1080@144";
position = "-1080x-240";
mode = "1920x1080@300";
position = "-1920x180";
scale = 1;
transform = 1;
transform = 0;
}
# {
# output = "DP-3";
# mode = "1920x1080@144";
# position = "-1080x-240";
# scale = 1;
# transform = 1;
# }
];
hare.hyprland = {
input.sensitivity = -1.0;
@@ -59,7 +60,28 @@
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; [
sccache
vivaldi
google-chrome
discord
@@ -69,7 +91,7 @@
nodejs
scrcpy
tetrio-desktop
kicad
# kicad
gimp
inkscape
obsidian
@@ -82,9 +104,9 @@
nixd
rust-analyzer
aseprite
bambu-studio
orca-slicer
davinci-resolve
# bambu-studio
# orca-slicer
# davinci-resolve
inputs.zen-browser.packages."${stdenv.hostPlatform.system}".default
# inputs.yoi.packages.${stdenv.hostPlatform.system}.default
];
+15 -11
View File
@@ -1,4 +1,4 @@
{ pkgs, ... }:
{ lib, pkgs, ... }:
let
config.boot.kernelPackages = pkgs.linuxPackages_latest;
in
@@ -36,9 +36,6 @@ in
../../programs/steam.nix
];
environment.systemPackages = with pkgs; [
cargo
rustc
rustfmt
openssl
vulkan-tools
android-tools
@@ -49,13 +46,6 @@ in
rocmPackages.clr
rocmPackages.rocm-smi
qemu
(pkgs.writeShellScriptBin "qemu-system-x86_64-uefi" ''
qemu-system-x86_64 \
-bios ${pkgs.OVMF.fd}/FV/OVMF.fd \
"$@"
'')
wineWow64Packages.waylandFull
winetricks
@@ -69,6 +59,14 @@ in
];
environment.sessionVariables.NIXOS_OZONE_WL = "1";
# programs.shojiwm = {
# enable = true;
# initConfig = {
# enable = true;
# users = [ "hare" ];
# };
# };
programs.nix-ld.enable = true;
services.openssh.enable = true;
@@ -91,6 +89,7 @@ in
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="input"
'';
services.tourbox-linux.enable = true;
systemd.services.tourbox-linux.reloadIfChanged = lib.mkForce false;
hardware.bluetooth = {
enable = true;
@@ -113,6 +112,11 @@ in
};
};
systemd.coredump.settings.Coredump = {
Storage = "none";
ProcessSizeMax = "0";
};
boot.kernelPackages = config.boot.kernelPackages;
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
boot.kernelModules = [
+6 -1
View File
@@ -5,6 +5,11 @@ rec {
x1carbon = import ./x1carbon 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));
}
+2
View File
@@ -12,6 +12,8 @@ let
};
in
{
inherit hostname;
nixos = inputs.nixpkgs.lib.nixosSystem {
modules =
systemModules
-11
View File
@@ -11,7 +11,6 @@
../../../home-manager/tofi.nix
../../../home-manager/fnott.nix
../../../home-manager/direnv.nix
../../../home-manager/obs-studio.nix
../../../home-manager/wezterm
../../../home-manager/fish
];
@@ -25,18 +24,8 @@
discord
plemoljp
plemoljp-nf
prismlauncher
scrcpy
gimp
zed-editor
deno
nodejs_latest
# aseprite
];
services.easyeffects = {
enable = true;
};
programs.git = {
enable = true;
settings.user.name = "Hare";
+1 -3
View File
@@ -1,11 +1,9 @@
{ pkgs, ... }:
{
extraGroups = [
"docker"
];
shell = pkgs.fish;
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIfql/a6ZtxOPgBhFzOfgTO6HGcy0Se9mgMLmOa40vMF"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIW2Yrqwi4YjIrdI8mygX5pTHDPmrUgbmpZ4WxoTqORi keihi@Vostro-LapTop"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBd45JtvgM44KUqhp3Xl2Wtt6rmxU13c/84YLyGKigkG hare@nixos"
];
}
-7
View File
@@ -12,11 +12,8 @@ in
../../programs/ssh.nix
../../programs/utility.nix
../../programs/shell.nix
../../programs/docker.nix
../../programs/v4l2.nix
../../programs/desktop/hyprland.nix
../../programs/fcitx.nix
../../programs/steam.nix
];
environment.systemPackages = with pkgs; [
openssl
@@ -77,10 +74,6 @@ in
};
boot.kernelPackages = config.boot.kernelPackages;
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
boot.kernelModules = [
"v4l2loopback"
];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
+2 -4
View File
@@ -38,9 +38,7 @@ let
})
hl.on("hyprland.start", function()
hl.exec_cmd("${
config.programs.regreet.package or pkgs.regreet
}/bin/regreet; ${pkgs.hyprland}/bin/hyprctl dispatch 'hl.dsp.exit()'")
hl.exec_cmd("${config.services.displayManager.regreet.package}/bin/regreet; ${pkgs.hyprland}/bin/hyprctl dispatch 'hl.dsp.exit()'")
end)
'';
in
@@ -62,7 +60,7 @@ in
rosePineHyprcursor
];
programs.regreet = {
services.displayManager.regreet = {
# greetd を Hyprland で動かす
enable = true;
theme.name = "Adwaita-dark";
+5
View File
@@ -13,5 +13,10 @@
};
};
programs.nh = {
enable = true;
flake = "/home/hare/cornflake";
};
nixpkgs.config.allowUnfree = true;
}
+11 -5
View File
@@ -1,11 +1,17 @@
{ config, ... }:
{
imports = [
./theme-switcher.nix
];
home.activation = {
makedir = ''
mkdir -p ~/.config/cornflake
'';
};
programs.nh = {
enable = true;
flake = "${config.home.homeDirectory}/cornflake";
};
home.activation = {
makedir = ''
mkdir -p ~/.config/cornflake
'';
};
}