Files
laptop-nixos-config/configuration.nix
2025-10-25 14:43:49 +09:00

126 lines
3.0 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Edit this configuration file to define what should be installed on your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ config, lib, pkgs, inputs, ... }:
let
myRizin = pkgs.rizin.passthru.withPlugins
(plugins: [ plugins.jsdec plugins.rz-ghidra ]);
in
{
imports = [
./hardware-configuration.nix
./services/virtual.nix
./services/x.nix
./services/sound.nix
./programs/hyprland.nix
];
services.logind.lidSwitch = "suspend";
nixpkgs.config.allowUnfree = true;
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.grub.device = "/dev/nvme1n1p1";
networking.hostName = "haskell"; # Define your hostname.
programs.steam.enable = true;
programs.fish.enable = true;
programs.nix-ld = {
enable = true;
libraries = import ./modules/ld.nix { inherit pkgs; };
};
time.timeZone = "Asia/Seoul";
i18n.defaultLocale = "en_US.UTF-8";
i18n.inputMethod = {
type = "fcitx5";
enable = true;
fcitx5.addons = with pkgs; [ fcitx5-gtk fcitx5-hangul ];
};
# console = {
# font = "Lat2-Terminus16";
# keyMap = "us";
# useXkbConfig = true; # use xkb.options in tty.
# };
services.udev.packages = [ pkgs.libwacom ];
services.usbmuxd = {
enable = false;
package = pkgs.usbmuxd2;
};
fonts.packages = with pkgs; [ nerd-fonts.monaspace ];
# Enable touchpad support (enabled default in most desktopManager).
# services.libinput.enable = true;
# Define a user account. Don't forget to set a password with passwd.
users.users.allen = {
isNormalUser = true;
extraGroups = [ "wheel" "podman" ]; # Enable sudo for the user.
shell = pkgs.fish;
home = "/home/allen";
packages = with pkgs; [ tree ];
};
users.groups.libvirtd.members = [ "allen" ];
users.groups.plugdev.members = [ "allen" ];
programs.firefox.enable = true;
# List packages installed in system profile.
# You can use https://search.nixos.org/ to find more packages (and options).
environment.systemPackages = with pkgs; [
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
pkg-config
wget
ntfs3g
openssl
gnome-tweaks
xf86_input_wacom
glfw
wacomtablet
libimobiledevice
ifuse
git
bash
libopus
xmousepasteblock
libglvnd
libGL
openal
myRizin
libgit2
inputs.helix.packages."${pkgs.system}".helix
];
nix.settings.experimental-features = [ "nix-command" "flakes" ];
environment.variables = {
LD_LIBRARY_PATH = lib.makeLibraryPath [
pkgs.libglvnd
pkgs.libGL
pkgs.glfw
pkgs.pulseaudio
pkgs.libgit2
];
HELLO = "WORLD";
};
environment.variables.EDITOR = "vim";
services.openssh.enable = true;
networking.firewall.enable = false;
system.stateVersion = "25.05"; # Did you read the comment?
}