# 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 ]; 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? }