diff --git a/README.md b/README.md index c39ae72..243febb 100644 --- a/README.md +++ b/README.md @@ -3,5 +3,5 @@ ``` sudo nixos-rebuild switch --flake .# -nix run .#home-manager -- switch --flake .#@ +nix run .#home-manager -- switch --flake .# ``` diff --git a/flake.nix b/flake.nix index f8ad23a..fc42b0b 100644 --- a/flake.nix +++ b/flake.nix @@ -34,9 +34,6 @@ apps.home-manager = { type = "app"; program = "${hm}/bin/home-manager"; - meta = { - description = "Home Manager for Nix"; - }; }; } )); diff --git a/hosts/arcadia/default.nix b/hosts/arcadia/default.nix deleted file mode 100644 index f97c99b..0000000 --- a/hosts/arcadia/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -inputs: -let - mkHost = import ../mkHost.nix inputs; -in -mkHost { - system = "x86_64-linux"; - hostname = "Arcadia"; - users = [ - { - username = "hare"; - home = ./hare/home-manager.nix; - nixos = ./hare/nixos.nix; - } - ]; - systemModules = [ ./nixos.nix ]; -} diff --git a/hosts/arcadia/display.nix b/hosts/arcadia/display.nix deleted file mode 100644 index 3b8ae77..0000000 --- a/hosts/arcadia/display.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ - wayland.windowManager.hyprland = { - settings = { - monitor = [ - "DP-1, 5120x2880@60, 0x0, 2" - "DP-2, 2560x1440@144, 2560x0, 1, transform, 0" - "DP-3, 1920x1080@144, -1080x-240, 1, transform, 1" - ]; - }; - }; -} diff --git a/hosts/arcadia/hardware-configuration.nix b/hosts/arcadia/hardware-configuration.nix deleted file mode 100644 index 43af020..0000000 --- a/hosts/arcadia/hardware-configuration.nix +++ /dev/null @@ -1,58 +0,0 @@ -{ - config, - lib, - pkgs, - modulesPath, - ... -}: -{ - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ - "nvme" - "xhci_pci" - "ahci" - "usb_storage" - "usbhid" - "sd_mod" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/f3934858-078f-463a-9dd3-d6ba220ced6d"; - fsType = "ext4"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/FFAC-0945"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" - ]; - }; - - swapDevices = [ ]; - - networking.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - - hardware.graphics = { - enable = true; - extraPackages = with pkgs; [ - mesa - libva - libvdpau-va-gl - vulkan-loader - vulkan-validation-layers - mesa.opencl # Enables Rusticl (OpenCL) support - rocmPackages.clr.icd - ]; - }; -} diff --git a/hosts/arcadia/hare/home-manager.nix b/hosts/arcadia/hare/home-manager.nix deleted file mode 100644 index 22d5224..0000000 --- a/hosts/arcadia/hare/home-manager.nix +++ /dev/null @@ -1,92 +0,0 @@ -{ - pkgs, - inputs, - lib, - ... -}: -{ - home.stateVersion = "25.05"; - imports = [ - inputs.nix-index-database.homeModules.nix-index - ../display.nix - ../../../home-manager/tofi.nix - ../../../home-manager/hyprland - ../../../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/zeditor.nix - ../../../home-manager/blender.nix - ../../../home-manager/voicevox.nix - ]; - hare.hyprland = { - input.sensitivity = -1.0; - wallpaperCommand = "swww img /usr/share/wallpaper/arknights-02.jpg"; - }; - - programs.nix-index-database.comma.enable = true; - - home.packages = with pkgs; [ - vivaldi - google-chrome - discord - helvum - plemoljp - plemoljp-nf - prismlauncher - scrcpy - tetrio-desktop - kicad - gimp - inkscape - obsidian - kdePackages.filelight - inputs.zen-browser.packages."${stdenv.hostPlatform.system}".default - (deno.overrideAttrs (oldAttrs: { - doCheck = false; - })) - nodejs_24 - godot - unityhub - nixd - rust-analyzer - aseprite - bambu-studio - orca-slicer - davinci-resolve - ]; - services.easyeffects = { - enable = true; - }; - - programs.git = { - enable = true; - settings.user.name = "Hare"; - settings.user.email = "kei.hiracchi.0928@gmail.com"; - }; - - fonts = { - fontconfig = { - defaultFonts = { - serif = [ "Noto Serif" ]; - sansSerif = [ "Noto Sans" ]; - monospace = [ "PlemolJP NF Console" ]; - }; - }; - }; - - xdg.mimeApps = { - enable = true; - - defaultApplications = { - "text/html" = "vivaldi-stable.desktop"; - "x-scheme-handler/http" = "vivaldi-stable.desktop"; - "x-scheme-handler/https" = "vivaldi-stable.desktop"; - "x-scheme-handler/about" = "vivaldi-stable.desktop"; - "x-scheme-handler/unknown" = "vivaldi-stable.desktop"; - }; - }; -} diff --git a/hosts/arcadia/hare/nixos.nix b/hosts/arcadia/hare/nixos.nix deleted file mode 100644 index 6cf7c57..0000000 --- a/hosts/arcadia/hare/nixos.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ pkgs, ... }: -{ - 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" - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID8Eo/QDJtXqluvjNx5ZpeIt0c/yf/Mgr7dKhNWAICZX hare@x1carbon" - ]; -} diff --git a/hosts/arcadia/nixos.nix b/hosts/arcadia/nixos.nix deleted file mode 100644 index fa44d0d..0000000 --- a/hosts/arcadia/nixos.nix +++ /dev/null @@ -1,114 +0,0 @@ -{ pkgs, ... }: -let - config.boot.kernelPackages = pkgs.linuxPackages_latest; -in -{ - system.stateVersion = "25.11"; - - cornflake.greeter.monitors = [ - "DP-1, 5120x2880@60, 0x0, 2" - "DP-2, disable" - "DP-3, disable" - ]; - - 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-tools - android-file-transfer - - rocmPackages.rocm-runtime - rocmPackages.rocminfo - 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 - - bluez - bluez-tools - bluetuith - obexftp - fzf - ghq - ]; - environment.sessionVariables.NIXOS_OZONE_WL = "1"; - - programs.nix-ld.enable = true; - - services.openssh.enable = true; - - services.udisks2.enable = true; - - networking.firewall.allowedTCPPorts = [ - 8080 - 22 - 5173 - 8000 - 9001 - 2222 # crtb server - 11434 - ]; - networking.firewall.allowedUDPPorts = [ ]; - - services.udev.extraRules = '' - ATTRS{idVendor}=="3151", ATTRS{idProduct}=="502d", MODE="0777" - ATTRS{idVendor}=="414", ATTRS{idProduct}=="211a", 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" ]; -} diff --git a/hosts/default.nix b/hosts/default.nix index f264c5c..362e6e4 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -1,12 +1,8 @@ -inputs: rec { +inputs: +rec { hosts = { aqua = import ./aqua inputs; - arcadia = import ./arcadia inputs; - x1carbon = import ./x1carbon inputs; - fungus = import ./fungus inputs; }; nixos = builtins.mapAttrs (_: host: host.nixos) 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)); } diff --git a/hosts/fungus/default.nix b/hosts/fungus/default.nix deleted file mode 100644 index e5990a5..0000000 --- a/hosts/fungus/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -inputs: -let - mkHost = import ../mkHost.nix inputs; -in -mkHost { - system = "x86_64-linux"; - hostname = "Fungus"; - users = [ - { - username = "hare"; - home = ./hare/home-manager.nix; - nixos = ./hare/nixos.nix; - } - ]; - systemModules = [ ./nixos.nix ]; -} diff --git a/hosts/fungus/hardware-configuration.nix b/hosts/fungus/hardware-configuration.nix deleted file mode 100644 index 7bc80b1..0000000 --- a/hosts/fungus/hardware-configuration.nix +++ /dev/null @@ -1,44 +0,0 @@ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ - config, - lib, - pkgs, - modulesPath, - ... -}: - -{ - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ - "xhci_pci" - "ahci" - "usbhid" - "usb_storage" - "sd_mod" - "sr_mod" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/e4eb343c-d88f-4d63-99aa-c2c41d8580db"; - fsType = "ext4"; - }; - - swapDevices = [ ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/fungus/hare/home-manager.nix b/hosts/fungus/hare/home-manager.nix deleted file mode 100644 index ed6d331..0000000 --- a/hosts/fungus/hare/home-manager.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ pkgs, ... }: -{ - home.stateVersion = "25.05"; - imports = [ - ../../../home-manager/direnv.nix - ../../../home-manager/wezterm - ../../../home-manager/fish - ]; - home.packages = with pkgs; [ ]; - programs.git = { - enable = true; - settings.user.name = "Hare"; - settings.user.email = "kei.hiracchi.0928@gmail.com"; - }; - - fonts = { - fontconfig = { - defaultFonts = { - serif = [ "Noto Serif" ]; - sansSerif = [ "Noto Sans" ]; - monospace = [ "PlemolJP NF Console" ]; - }; - }; - }; -} diff --git a/hosts/fungus/hare/nixos.nix b/hosts/fungus/hare/nixos.nix deleted file mode 100644 index 39bce37..0000000 --- a/hosts/fungus/hare/nixos.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ pkgs, ... }: -{ - extraGroups = [ - "docker" - ]; - shell = pkgs.fish; - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBd45JtvgM44KUqhp3Xl2Wtt6rmxU13c/84YLyGKigkG hare@nixos" - "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDZTkjrLwH+jsSHF/LI23+WPQ9rff9vWBH1VaxSjNADIIKDY7vGkWWRUCImt8QTzied3mNFv+EyZ8igiJdm5tEO1KkrWUqTZk5Ut79LTQftB23SDNC8XzuHKxwaKHdwZIP065biRFUqNYHu8h0EHKbQ3Djj6cZYBcEL1JOc0wtm4jmuW6Fp3rCn/ZCo0g3Kg7SfY4cpf4fJTB97bIjPJzG7JSSOuTkJcDQzFrySUPOpgrt5+iSqKJ/tQtfxLHcNq8AMrh1fH6sUzaJLmMs/7V9LTbsbILTY4YQj5FF07dBqEJBwvZ9sRTPPzl/HSdVmp9OlCZnryPbjTKJmK1Nxx+tOZfh4IY3mWWnEegvDNCYwKJu+d+zeqDaSUMx0kpAnK9PLSI0By8FtboRVvSFSce6FouiUhEzJyKXAr3E1JCgQXdLcTTb66rbBcauuqhuieKDGPpz45EbFi83uHNeDodi5b75h5r1Nn+oJmzagwUAoyw4gCCbiYwTAe3GA79LK7kE= hare@hr-r620" - ]; -} diff --git a/hosts/fungus/nixos.nix b/hosts/fungus/nixos.nix deleted file mode 100644 index 460eb96..0000000 --- a/hosts/fungus/nixos.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ pkgs, ... }: -{ - system.stateVersion = "25.05"; - - imports = [ - ./hardware-configuration.nix - - ../../system/core - ../../programs/ssh.nix - ../../programs/utility.nix - ../../programs/shell.nix - ../../programs/docker.nix - ]; - environment.systemPackages = with pkgs; [ - ]; - - boot.loader.grub.enable = true; - boot.loader.grub.device = "/dev/sda"; - boot.loader.grub.useOSProber = true; - boot.loader.efi.canTouchEfiVariables = true; - - programs.nix-ld.enable = true; - - services.openssh.enable = true; - - networking.firewall.allowedTCPPorts = [ - 22 - 25565 - ]; - networking.firewall.allowedUDPPorts = [ ]; -} diff --git a/hosts/mkHost.nix b/hosts/mkHost.nix index d29ef6e..9c9047a 100644 --- a/hosts/mkHost.nix +++ b/hosts/mkHost.nix @@ -15,30 +15,22 @@ in nixos = inputs.nixpkgs.lib.nixosSystem { modules = systemModules - ++ (map ( - u: - { pkgs, ... }: - { - users.users.${u.username} = import (if u ? userNixos then u.userNixos else u.nixos) { - inherit pkgs; - }; - } - ) (builtins.filter (u: u ? userNixos || u ? nixos) users)) + ++ (map (u: { pkgs, ... }: { + users.users.${u.username} = import u.userNixos { inherit pkgs; }; + }) (builtins.filter (u: u ? userNixos) users)) ++ [ { - users.users = builtins.listToAttrs ( - map (u: { - name = u.username; - value = { - isNormalUser = true; - description = ""; - extraGroups = [ - "networkmanager" - "wheel" - ]; - }; - }) users - ); + users.users = builtins.listToAttrs (map (u: { + name = u.username; + value = { + isNormalUser = true; + description = ""; + extraGroups = [ + "networkmanager" + "wheel" + ]; + }; + }) users); } ]; inherit system; @@ -47,27 +39,24 @@ in users = map (u: u.username) users; }; }; - home-manager = builtins.listToAttrs ( - map (u: { - name = "${u.username}@${hostname}"; - value = inputs.home-manager.lib.homeManagerConfiguration { - inherit pkgs; - extraSpecialArgs = { - inherit inputs hostname; - username = u.username; - }; - modules = [ - { - home = { - username = u.username; - homeDirectory = "/home/${u.username}"; - }; - programs.home-manager.enable = true; - } - (import ../system/home-manager) - ] - ++ (if u ? homeModule then u.homeModule else [ u.home ]); + home-manager = builtins.listToAttrs (map (u: { + name = "${u.username}@${hostname}"; + value = inputs.home-manager.lib.homeManagerConfiguration { + inherit pkgs; + extraSpecialArgs = { + inherit inputs hostname; + username = u.username; }; - }) users - ); + modules = [ + { + home = { + username = u.username; + homeDirectory = "/home/${u.username}"; + }; + programs.home-manager.enable = true; + } + (import ../system/home-manager) + ] ++ u.homeModule; + }; + }) users); } diff --git a/hosts/x1carbon/default.nix b/hosts/x1carbon/default.nix deleted file mode 100644 index d3a2bc0..0000000 --- a/hosts/x1carbon/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -inputs: -let - mkHost = import ../mkHost.nix inputs; -in -mkHost { - system = "x86_64-linux"; - hostname = "x1carbon"; - users = [ - { - username = "hare"; - home = ./hare/home-manager.nix; - nixos = ./hare/nixos.nix; - } - ]; - systemModules = [ ./nixos.nix ]; -} diff --git a/hosts/x1carbon/hardware-configuration.nix b/hosts/x1carbon/hardware-configuration.nix deleted file mode 100644 index 50fa13e..0000000 --- a/hosts/x1carbon/hardware-configuration.nix +++ /dev/null @@ -1,31 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/92c8bab5-07b9-4394-888d-6cb481972018"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1711-8E2B"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = [ ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/x1carbon/hare/home-manager.nix b/hosts/x1carbon/hare/home-manager.nix deleted file mode 100644 index 9df1921..0000000 --- a/hosts/x1carbon/hare/home-manager.nix +++ /dev/null @@ -1,68 +0,0 @@ -{ - pkgs, - inputs, - lib, - ... -}: -{ - home.stateVersion = "25.05"; - imports = [ - ../../../home-manager/hyprland - ../../../home-manager/tofi.nix - ../../../home-manager/fnott.nix - ../../../home-manager/direnv.nix - ../../../home-manager/obs-studio.nix - ../../../home-manager/wezterm - ../../../home-manager/fish - ]; - hare.hyprland = { - style = import ../../../home-manager/hyprland/styles/thin.nix { inherit lib; }; - input.sensitivity = -0.6; - wallpaperCommand = "swww img /usr/share/wallpaper/"; - }; - home.packages = with pkgs; [ - vivaldi - discord - helvum - plemoljp - plemoljp-nf - prismlauncher - scrcpy - gimp - zed-editor - deno - nodejs_latest - # aseprite - ]; - services.easyeffects = { - enable = true; - }; - - programs.git = { - enable = true; - settings.user.name = "Hare"; - settings.user.email = "kei.hiracchi.0928@gmail.com"; - }; - - fonts = { - fontconfig = { - defaultFonts = { - serif = [ "Noto Serif" ]; - sansSerif = [ "Noto Sans" ]; - monospace = [ "PlemolJP NF Console" ]; - }; - }; - }; - - xdg.mimeApps = { - enable = true; - - defaultApplications = { - "text/html" = "vivaldi-stable.desktop"; - "x-scheme-handler/http" = "vivaldi-stable.desktop"; - "x-scheme-handler/https" = "vivaldi-stable.desktop"; - "x-scheme-handler/about" = "vivaldi-stable.desktop"; - "x-scheme-handler/unknown" = "vivaldi-stable.desktop"; - }; - }; -} diff --git a/hosts/x1carbon/hare/nixos.nix b/hosts/x1carbon/hare/nixos.nix deleted file mode 100644 index ee983de..0000000 --- a/hosts/x1carbon/hare/nixos.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ pkgs, ... }: -{ - extraGroups = [ - "docker" - ]; - shell = pkgs.fish; - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIfql/a6ZtxOPgBhFzOfgTO6HGcy0Se9mgMLmOa40vMF" - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIW2Yrqwi4YjIrdI8mygX5pTHDPmrUgbmpZ4WxoTqORi keihi@Vostro-LapTop" - ]; -} diff --git a/hosts/x1carbon/nixos.nix b/hosts/x1carbon/nixos.nix deleted file mode 100644 index d052e55..0000000 --- a/hosts/x1carbon/nixos.nix +++ /dev/null @@ -1,88 +0,0 @@ -{ pkgs, ... }: -let - config.boot.kernelPackages = pkgs.linuxPackages_latest; -in -{ - system.stateVersion = "25.11"; - - 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; [ - openssl - - bluetuith - - brightnessctl - - fzf - ghq - - android-tools - ]; - environment.sessionVariables.NIXOS_OZONE_WL = "1"; - - programs.nix-ld.enable = true; - programs.light.enable = true; - - services.openssh.enable = true; - - services.udisks2.enable = true; - - networking.firewall.allowedTCPPorts = [ - 22 - ]; - networking.firewall.allowedUDPPorts = [ ]; - - services.openvpn.servers = { - homeVPN = { - config = ''config /root/nixos/openvpn/homeVPN.conf ''; - }; - }; - - services.udev.extraRules = '' - ATTRS{idVendor}=="3151", ATTRS{idProduct}=="502d", MODE="0777" - ATTRS{idVendor}=="414", ATTRS{idProduct}=="211a", 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; -}