120 lines
2.6 KiB
Nix
120 lines
2.6 KiB
Nix
{
|
|
pkgs,
|
|
username,
|
|
...
|
|
}:
|
|
let
|
|
config.boot.kernelPackages = pkgs.linuxPackages_latest;
|
|
in
|
|
{
|
|
system.stateVersion = "25.05";
|
|
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
|
|
../../system/core
|
|
../../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; [
|
|
cargo
|
|
rustc
|
|
rustfmt
|
|
openssl
|
|
vulkan-tools
|
|
android-file-transfer
|
|
|
|
rocmPackages.rocm-runtime
|
|
rocmPackages.rocminfo
|
|
rocmPackages.clr
|
|
|
|
qemu
|
|
(pkgs.writeShellScriptBin "qemu-system-x86_64-uefi" ''
|
|
qemu-system-x86_64 \
|
|
-bios ${pkgs.OVMF.fd}/FV/OVMF.fd \
|
|
"$@"
|
|
'')
|
|
|
|
wineWowPackages.waylandFull
|
|
winetricks
|
|
|
|
bluez
|
|
bluez-tools
|
|
bluetuith
|
|
obexftp
|
|
];
|
|
environment.sessionVariables.NIXOS_OZONE_WL = "1";
|
|
|
|
users.users.${username} = {
|
|
extraGroups = [
|
|
"adbusers"
|
|
"docker"
|
|
];
|
|
shell = pkgs.fish;
|
|
openssh.authorizedKeys.keys = [
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIfql/a6ZtxOPgBhFzOfgTO6HGcy0Se9mgMLmOa40vMF"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIW2Yrqwi4YjIrdI8mygX5pTHDPmrUgbmpZ4WxoTqORi keihi@Vostro-LapTop"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICi8Cciepfs1ikPdfyHjc9qJX5z2QLFF9jBszsyEvCMA nix-on-droid@localhost"
|
|
];
|
|
};
|
|
programs.adb.enable = true;
|
|
programs.nix-ld.enable = true;
|
|
|
|
services.openssh.enable = true;
|
|
|
|
services.udisks2.enable = true;
|
|
|
|
networking.firewall.allowedTCPPorts = [
|
|
8080
|
|
22
|
|
5173
|
|
8000
|
|
9001
|
|
11434
|
|
];
|
|
networking.firewall.allowedUDPPorts = [ ];
|
|
|
|
services.udev.extraRules = ''
|
|
ATTRS{idVendor}=="3151", ATTRS{idProduct}=="502d", MODE="0777"
|
|
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="input"
|
|
'';
|
|
|
|
hardware.bluetooth = {
|
|
enable = true;
|
|
package = pkgs.bluez;
|
|
powerOnBoot = true;
|
|
settings = {
|
|
General = {
|
|
ControllerMode = "dual";
|
|
Experimental = true;
|
|
KernelExperimental = true;
|
|
FastConnectable = true;
|
|
# セキュリティレベルを調整
|
|
Class = "0x000100";
|
|
# ペアリングタイムアウトを延長
|
|
PairableTimeout = 0;
|
|
};
|
|
Policy = {
|
|
AutoEnable = true;
|
|
};
|
|
};
|
|
};
|
|
|
|
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;
|
|
|
|
boot.initrd.kernelModules = [ "amdgpu" ];
|
|
}
|