summaryrefslogtreecommitdiff
path: root/configuration/core
diff options
context:
space:
mode:
Diffstat (limited to 'configuration/core')
-rw-r--r--configuration/core/default.nix9
-rw-r--r--configuration/core/packages.nix27
-rw-r--r--configuration/core/services.nix47
-rw-r--r--configuration/core/settings.nix8
-rw-r--r--configuration/core/users.nix31
5 files changed, 122 insertions, 0 deletions
diff --git a/configuration/core/default.nix b/configuration/core/default.nix
new file mode 100644
index 0000000..87917ab
--- /dev/null
+++ b/configuration/core/default.nix
@@ -0,0 +1,9 @@
+{ ... }:
+{
+ imports = [
+ ./users.nix
+ ./services.nix
+ ./settings.nix
+ ./packages.nix
+ ];
+}
diff --git a/configuration/core/packages.nix b/configuration/core/packages.nix
new file mode 100644
index 0000000..cf4baea
--- /dev/null
+++ b/configuration/core/packages.nix
@@ -0,0 +1,27 @@
+{ pkgs, ... }:
+{
+ environment.systemPackages = with pkgs; [
+ kitty
+
+ helix
+ alacritty
+ firefox
+ git
+ git-crypt
+ whatsapp-for-linux
+ obsidian
+ devenv
+
+ busybox
+ usbutils
+ dig
+ file
+ gcc
+ jq
+ netcat
+ tcpdump
+ wget
+ iftop
+ htop
+ ];
+}
diff --git a/configuration/core/services.nix b/configuration/core/services.nix
new file mode 100644
index 0000000..9997d71
--- /dev/null
+++ b/configuration/core/services.nix
@@ -0,0 +1,47 @@
+{ pkgs, ... }:
+{
+ services = {
+ pipewire = {
+ enable = true;
+ alsa.enable = true;
+ alsa.support32Bit = true;
+ pulse.enable = true;
+ };
+ keyd = {
+ enable = true;
+ keyboards = {
+ default = {
+ ids = [ "*" ];
+ settings.main.capslock = "overload(meta, esc)";
+ };
+ };
+ };
+ greetd = {
+ enable = true;
+ settings = {
+ default_session = {
+ command = "${pkgs.hyprland}/bin/Hyprland";
+ user = "jras";
+ };
+ };
+ };
+ gnome.gnome-keyring.enable = true;
+ openssh = {
+ enable = true;
+ openFirewall = false;
+ settings.AllowUsers = [ "jras" ];
+ };
+ };
+
+ systemd.user.services.kanshi = {
+ description = "kanshi daemon";
+ environment = {
+ WAYLAND_DISPLAY="wayland-1";
+ DISPLAY=":0";
+ };
+ serviceConfig = {
+ Type = "simple";
+ ExecStart = ''${pkgs.kanshi}/bin/kanshi -c kanshi_config_file'';
+ };
+ };
+}
diff --git a/configuration/core/settings.nix b/configuration/core/settings.nix
new file mode 100644
index 0000000..e7a7b2e
--- /dev/null
+++ b/configuration/core/settings.nix
@@ -0,0 +1,8 @@
+{ ... }:
+{
+ nixpkgs.config.allowUnfree = true;
+ nix.settings = {
+ experimental-features = [ "nix-command" "flakes" ];
+ trusted-users = [ "root" "jras" ];
+ };
+}
diff --git a/configuration/core/users.nix b/configuration/core/users.nix
new file mode 100644
index 0000000..26703a0
--- /dev/null
+++ b/configuration/core/users.nix
@@ -0,0 +1,31 @@
+{ pkgs, ... }:
+{
+ programs.zsh.enable = true;
+
+ security.sudo.execWheelOnly = true;
+ security.sudo.wheelNeedsPassword = false;
+
+ users.mutableUsers = false;
+ users.users.jras = {
+ createHome = true;
+ hashedPassword = "$6$TznUKJuLwtXUaxhf$aod7gOgTXq4sTg8IPEX3HkiZgFHWCNUl0qmJUKHYQYQG8cPFjxCfmXREZHUYtQD2/estrbuCjIqoiLQKofdel.";
+ isNormalUser = true;
+ extraGroups = [ "wheel" ];
+ shell = pkgs.zsh;
+ packages = with pkgs; [ git helix curl ];
+ openssh.authorizedKeys.keyFiles = [ ../../keys/id_tarrel.pub ../../keys/id_work.pub ];
+ };
+
+ i18n.defaultLocale = "en_US.UTF-8";
+ i18n.extraLocaleSettings = {
+ LC_ADDRESS = "nl_NL.UTF-8";
+ LC_IDENTIFICATION = "nl_NL.UTF-8";
+ LC_MEASUREMENT = "nl_NL.UTF-8";
+ LC_MONETARY = "nl_NL.UTF-8";
+ LC_NAME = "nl_NL.UTF-8";
+ LC_NUMERIC = "nl_NL.UTF-8";
+ LC_PAPER = "nl_NL.UTF-8";
+ LC_TELEPHONE = "nl_NL.UTF-8";
+ LC_TIME = "nl_NL.UTF-8";
+ };
+}