aboutsummaryrefslogtreecommitdiffstats
path: root/nixos/default.nix
diff options
context:
space:
mode:
authorgrm@eyesin.space <grm@eyesin.space>2025-09-02 23:04:24 +0000
committergrm@eyesin.space <grm@eyesin.space>2025-09-02 23:04:24 +0000
commit47ef05ab310bb466300e93d1459370450414fbc4 (patch)
tree808f155d2871f831af743509de982c4c9789357c /nixos/default.nix
downloadnixos-config-47ef05ab310bb466300e93d1459370450414fbc4.tar.gz
nixos-config-47ef05ab310bb466300e93d1459370450414fbc4.tar.bz2
nixos-config-47ef05ab310bb466300e93d1459370450414fbc4.zip
Diffstat (limited to 'nixos/default.nix')
-rw-r--r--nixos/default.nix95
1 files changed, 95 insertions, 0 deletions
diff --git a/nixos/default.nix b/nixos/default.nix
new file mode 100644
index 0000000..fd5467a
--- /dev/null
+++ b/nixos/default.nix
@@ -0,0 +1,95 @@
+{pkgs, ...}: {
+ imports = [
+ ./localization.nix
+ ./users.nix
+ ./vim.nix
+ ];
+
+ nix = {
+ # weekly gc
+ gc = {
+ automatic = true;
+ dates = "weekly";
+ options = "--delete-older-than 1w";
+ };
+
+ settings = {
+ # optimize store (run manually with `nix-store --optimise`)
+ auto-optimise-store = true;
+ download-buffer-size = 524288000; #500MiB
+
+ # enable flakes
+ experimental-features = ["nix-command" "flakes"];
+ };
+ };
+
+ # allow unfree packages globally
+ nixpkgs.config.allowUnfree = true;
+
+
+
+ nixpkgs.config.permittedInsecurePackages = [
+ "qtwebengine-5.15.19"
+ ];
+
+ # timezone
+ time.timeZone = "Europe/Athens";
+
+ # default packages
+ environment = {
+ systemPackages = with pkgs; [
+ bc
+ cifs-utils
+ linuxPackages_latest.cpupower
+ comma
+ curl
+ efibootmgr
+ ethtool
+ file
+ git
+ gnumake
+ lesspipe
+ lsof
+ moreutils
+ nettools
+ nvme-cli
+ openssl
+ pciutils
+ smartmontools
+ somo
+ usbutils
+ ];
+
+ # add zsh completion for system packages
+ pathsToLink = ["/share/zsh"];
+
+ # add ~/bin to PATH
+ homeBinInPath = true;
+ };
+
+ # enable zsh
+ programs.zsh.enable = true;
+
+ # add lesspipe support for less
+ programs.less = {
+ enable = true;
+ lessopen = "|${pkgs.lesspipe}/bin/lesspipe.sh %s";
+ };
+
+ services = {
+ envfs = {
+ enable = true;
+ };
+
+ fwupd = {
+ enable = true;
+ };
+
+ openssh = {
+ enable = true;
+ settings = {
+ PasswordAuthentication = false;
+ };
+ };
+ };
+}