feat: update workstation services and tools

This commit is contained in:
2026-10-08 23:32:38 +09:00
parent 4c8e9f809a
commit 4d2cd548fa
12 changed files with 180 additions and 51 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 -H <host>
nh home switch -c <username>@<host>
```
Generated
+41 -20
View File
@@ -61,11 +61,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1784489491, "lastModified": 1791306979,
"narHash": "sha256-j9maqjx1T8+ljAVntAdSI5hSGCm77QNZz64JF1rJNu0=", "narHash": "sha256-KuLePuhwJM9NLt/gTLHzXaOoSZKGoB3m7NfXjiQ98HY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "3139deb8cafbe73b39b24451255b2fdd3426077e", "rev": "fae6e9e42c3b762ab47635cddcfaf6f52374a61b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -81,11 +81,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1784440659, "lastModified": 1791105314,
"narHash": "sha256-Q5kNLlWngt7TaIIZoxDKWMHjiSaNRVqr70FqWCRRfr4=", "narHash": "sha256-oTM7QFgRQ+vxBpMBMc7hEYpqBtpXAzXu2xuB/tru84U=",
"owner": "Mic92", "owner": "Mic92",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "4f8d52a3598b0dc7db7a5e7b419e3edd9d1ecfdb", "rev": "e740bc4e9d8918d7819a51486d5099930c65c72e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -99,11 +99,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1784310968, "lastModified": 1791373788,
"narHash": "sha256-rkSPTePrKqs4dg+i7ZFCq93+HrClac6oSwXX927SVjA=", "narHash": "sha256-c3oMt0QoE+4yiRk6u1m2L9ogjaUw0uTGn9yk808KkgE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "779c32a00155994c86cde8213a8dd4df139d4355", "rev": "4bc63156b109ee7b4103e3ec30565c8c92bde435",
"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": 1791260994,
"narHash": "sha256-12KrbMiWLcf8m7pCvAtZh1ZrgF85ZXDXvfR/fWTKy84=", "narHash": "sha256-Miqqk/ammqnTUxaoCyvtwoPeLbI1ksFyLxi/CazZpWY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "61b7c44c4073f0b827768aff0049561b5110ea5a", "rev": "151fa4e8ddfdd8dd25d945ad94ed54a13de9f6e4",
"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": 1791429304,
"narHash": "sha256-yZ4ULwBskLKYhkkFnJN9pKnixJ2BVZc5SHZG4rkxcjA=",
"owner": "bea4dev",
"repo": "ShojiWM",
"rev": "1e7fdb4e8e7b1bc87e8147e8c502acd28a999594",
"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": 1790741488,
"narHash": "sha256-4LdSQBnOPZ82otj2go33qAtDUcVtWFRmMvfgKdQO9Ys=", "narHash": "sha256-GGrLwzCIl3ncUoHA2CXnW6/GH2o6Nzdv7p/f1td1R+E=",
"ref": "develop", "ref": "develop",
"rev": "37c44a7942776ce43d21f0aa55e55006de1aa6a4", "rev": "657cae1d4beed796547f57e460546c40cce3bc37",
"revCount": 3343, "revCount": 4571,
"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";
};
}
+9
View File
@@ -1,4 +1,13 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
let
obs-shaderfilter = pkgs.obs-studio-plugins.obs-shaderfilter.overrideAttrs (oldAttrs: {
postPatch = (oldAttrs.postPatch or "") + ''
substituteInPlace obs-shaderfilter.c \
--replace-fail 'obs_properties_add_button(props, "reload_effect"' 'obs_properties_add_button2(props, "reload_effect"' \
--replace-fail 'shader_filter_reload_effect_clicked);' 'shader_filter_reload_effect_clicked, NULL);'
'';
});
in
{ {
programs.obs-studio = { programs.obs-studio = {
enable = true; enable = true;
+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" }
]
'';
}
+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 -15
View File
@@ -1,4 +1,5 @@
{ {
config,
pkgs, pkgs,
inputs, inputs,
lib, lib,
@@ -17,8 +18,10 @@
../../../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 +39,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 +61,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 +92,7 @@
nodejs nodejs
scrcpy scrcpy
tetrio-desktop tetrio-desktop
kicad # kicad
gimp gimp
inkscape inkscape
obsidian obsidian
@@ -82,9 +105,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
]; ];
+13 -10
View File
@@ -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;
@@ -113,6 +111,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 = [
+1 -1
View File
@@ -62,7 +62,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";
+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
'';
};
} }