summaryrefslogtreecommitdiff
path: root/hosts/local/master
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2024-09-05 12:42:01 +0700
committerpolwex <polwex@sortug.com>2024-09-05 12:42:01 +0700
commitb7ef804b1d92d409b55c955fcfbaec8ceb62063a (patch)
treee5f05241a260ca4c0bb73e9a4f40707b797ce6fb /hosts/local/master
parent6a7fa5ae7c243b3dd1f0d5a4221c3b69a4bdbab7 (diff)
m
Diffstat (limited to 'hosts/local/master')
-rw-r--r--hosts/local/master/configuration.nix6
-rw-r--r--hosts/local/master/hardware-configuration.nix12
-rw-r--r--hosts/local/master/keyboard.nix44
-rw-r--r--hosts/local/master/oldhw.nix41
-rw-r--r--hosts/local/master/rapoo.kbd102
5 files changed, 197 insertions, 8 deletions
diff --git a/hosts/local/master/configuration.nix b/hosts/local/master/configuration.nix
index 19708b8..c137835 100644
--- a/hosts/local/master/configuration.nix
+++ b/hosts/local/master/configuration.nix
@@ -7,9 +7,11 @@
../../base.nix
../../linux.nix
../../unfree.nix
- ../../android.nix
- ../i3.nix
+ #../../android.nix
+ # ../i3.nix
+ ../gnome.nix
../nvidia.nix
+ ./keyboard.nix
];
# Use the systemd-boot EFI boot loader.
diff --git a/hosts/local/master/hardware-configuration.nix b/hosts/local/master/hardware-configuration.nix
index fc5597c..6e2ed9f 100644
--- a/hosts/local/master/hardware-configuration.nix
+++ b/hosts/local/master/hardware-configuration.nix
@@ -14,17 +14,18 @@
boot.extraModulePackages = [ ];
fileSystems."/" =
- { device = "/dev/disk/by-uuid/13b360be-0528-4690-b7ab-80c89033c5b7";
+ { device = "/dev/disk/by-uuid/3f1343f2-1ba3-4c57-b95e-bb808d3dffd3";
fsType = "ext4";
};
fileSystems."/boot" =
- { device = "/dev/disk/by-uuid/92AC-1484";
+ { device = "/dev/disk/by-uuid/C676-FD24";
fsType = "vfat";
+ options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices =
- [ { device = "/dev/disk/by-uuid/0b5d123f-3832-4aa2-b486-c64ed476fcf9"; }
+ [ { device = "/dev/disk/by-uuid/e34d7981-458b-462a-b551-007bce4f40f9"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
@@ -32,9 +33,8 @@
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
- # networking.interfaces.docker0.useDHCP = lib.mkDefault true;
- # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true;
- # networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
+ # networking.interfaces.enp4s0.useDHCP = lib.mkDefault true;
+ # networking.interfaces.wlp5s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
diff --git a/hosts/local/master/keyboard.nix b/hosts/local/master/keyboard.nix
new file mode 100644
index 0000000..0aa0687
--- /dev/null
+++ b/hosts/local/master/keyboard.nix
@@ -0,0 +1,44 @@
+{ config, lib, pkgs, ... }:
+
+{
+ services.logind.extraConfig = ''
+ # don’t shutdown when power button is short-pressed
+ HandlePowerKey=ignore
+ '';
+
+# config file keeps getting rewritten but I don't know by who
+ # i18n.inputMethod = {
+ # enabled = "fcitx5";
+ # fcitx5.addons = with pkgs; [
+ # fcitx5-mozc
+ # # mozc-ut is better, wat do
+ # fcitx5-gtk
+ # libsForQt5.fcitx5-qt
+ # fcitx5-lua
+ # fcitx5-configtool
+ # fcitx5-rime
+ # ];
+ # };
+ environment.variables = {
+ GTK_IM_MODULE = "fcitx";
+ QT_IM_MODULE = "fcitx";
+ XMODIFIERS = "@im=fcitx";
+ FCITX_SOCKET = "default";
+ };
+
+
+ #kmonad
+ services.kmonad ={
+ enable = true;
+
+ keyboards.internal = {
+ device = "/dev/input/by-id/usb-RAPOO_Rapoo_2.4G_Wireless_Device-if02-event-kbd";
+ config = builtins.readFile ./rapoo.kbd;
+
+ # defcfg = {
+ # enable = true;
+ # fallthrough = true;
+ # };
+ };
+ };
+}
diff --git a/hosts/local/master/oldhw.nix b/hosts/local/master/oldhw.nix
new file mode 100644
index 0000000..fc5597c
--- /dev/null
+++ b/hosts/local/master/oldhw.nix
@@ -0,0 +1,41 @@
+# 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" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ "kvm-intel" ];
+ boot.extraModulePackages = [ ];
+
+ fileSystems."/" =
+ { device = "/dev/disk/by-uuid/13b360be-0528-4690-b7ab-80c89033c5b7";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/92AC-1484";
+ fsType = "vfat";
+ };
+
+ swapDevices =
+ [ { device = "/dev/disk/by-uuid/0b5d123f-3832-4aa2-b486-c64ed476fcf9"; }
+ ];
+
+ # 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.<interface>.useDHCP`.
+ networking.useDHCP = lib.mkDefault true;
+ # networking.interfaces.docker0.useDHCP = lib.mkDefault true;
+ # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true;
+ # networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
+
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
+ hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+}
diff --git a/hosts/local/master/rapoo.kbd b/hosts/local/master/rapoo.kbd
new file mode 100644
index 0000000..e117f2f
--- /dev/null
+++ b/hosts/local/master/rapoo.kbd
@@ -0,0 +1,102 @@
+;; one liner comments ';;'
+#| Multiline
+ comments |#
+
+(defcfg ;; For linux & by-id lists pluggable devices
+;; If a key is not bound/left_empty(_) then it will fall back to the previous
+;; layer's binding if not then default.
+fallthrough true
+;; To run system commands. You MIGHT face issues with tiling window managers due to command helpers.
+;; allow-cmd true
+;; use 'ls /dev/input/by-id/' for detachable keyboards and
+;; 'ls /dev/input/by-path/' for builtin keyboards location'
+;; input (device-file "/dev/input/event3")
+input (device-file "/dev/input/by-id/usb-RAPOO_Rapoo_2.4G_Wireless_Device-if02-event-kbd")
+;; Not sure what this does. Please check the docs.
+output (uinput-sink "My KMonad output")
+)
+
+;; This is the real representation of your actual keyboard. We haven't started
+;; customizing layouts yet.
+(defsrc
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12
+ ` 1 2 3 4 5 6 7 8 9 0 - = bspc
+ tab q w e r t y u i o p [ ] \
+ caps a s d f g h j k l ; ' ret
+ lsft z x c v b n m , . / rsft up
+ lctl lmet lalt spc ralt rctl left down right
+)
+;; Aliases
+
+(defalias
+;; Layer toggles
+sym (layer-toggle syms)
+sym2 (layer-toggle syms2)
+cords (sticky-key 1000 (layer-toggle mods))
+;;
+hrt (layer-switch homerowmods)
+back (layer-switch qwerty)
+
+;; Homerow keys
+a (tap-hold-next-release 280 a lctl)
+s (tap-hold-next-release 280 s lalt)
+d (tap-hold-next-release 280 d lmet)
+f (tap-hold-next-release 280 f lsft)
+;;
+j (tap-hold-next-release 280 j rsft)
+k (tap-hold-next-release 280 k lmet)
+l (tap-hold-next-release 280 l lalt)
+semi (tap-hold-next-release 280 ; rctl)
+
+;; button to launch brave browser
+;; veeb (cmd-button "brave")
+;; ssf (sticky-key 500 (layer-toggle rshift))
+;; rsf (layer-toggle rshift)
+)
+
+;; The first custom layer is the one that gets activated when kmonad is started
+(deflayer qwerty ;; The default layer that'd be read when you launch kmonad
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12
+ ` 1 2 3 4 5 6 7 8 9 0 - = bspc
+ tab q w e r t y u i o p [ ] \
+ esc a s d f g h j k l ; ' ret
+ @sym z x c v b n m , . / rsft up
+ lctl lmet @sym spc @cords @hrt left down right
+)
+(deflayer homerowmods
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12
+ ` 1 2 3 4 5 6 7 8 9 0 - = bspc
+ tab q w e r t y u i o p [ ] \
+ esc @a @s @d @f g h @j @k @l @semi ' ret
+ @sym z x c v b n m , . / rsft up
+ lctl lmet @sym spc lalt @back left down right
+)
+(deflayer mods
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12
+ ` 1 2 3 4 5 6 7 8 9 0 - = bspc
+ tab q w e r t y u i o p [ ] h
+ esc lctl lalt lmet lsft g h rsft rmet ralt rctl ' ret
+ @sym z x c v b n m , . / rsft up
+ lctl lmet @sym spc lalt @back left down right
+)
+
+;; A layer dedicated to symbols
+(deflayer syms
+ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ up _ _ ! @ # $ % _ _ _
+ _ _ left down right @sym2 ' ^ & - = _ ret
+ _ _ _ _ _ _ \( [ { < \ _ _
+ _ _ _ _ _ _ _ _ _
+)
+
+
+;; More symbols
+(deflayer syms2
+ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ ` ~ * \_ + _ ret
+ _ _ _ _ _ _ \) ] } > | _ _
+ _ _ _ _ _ _ _ _ _
+)