summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2025-10-22 14:02:16 +0700
committerpolwex <polwex@sortug.com>2025-10-22 14:02:16 +0700
commit21adca7e6d8f8233ac8d6c00c7be43dc026e8cc5 (patch)
tree1fffcd2c077af786ec4f28f1109a5d426295a398
parent4bb8dd864cf5077018327d6f55058b87def03d45 (diff)
parentf11a2b69c2fb5ef6111af107deba37114f7ab2ff (diff)
Merge branch 'fw'
-rw-r--r--derivations/fw-ectool/default.nix45
-rw-r--r--devenv.lock103
-rw-r--r--flake.nix13
-rw-r--r--hosts/local/fw11/configuration.nix12
-rw-r--r--hosts/local/fw11/hardware-configuration.bkp40
-rw-r--r--hosts/local/fw11/hardware-configuration.nix19
-rw-r--r--hosts/local/fw11/keyboard.nix8
-rw-r--r--hosts/local/gui.nix1
-rw-r--r--hosts/local/niri.nix224
-rw-r--r--hosts/local/sway.nix (renamed from hosts/local/wayland.nix)4
-rw-r--r--hosts/local/thinkpad.kbd (renamed from hosts/local/fw11/thinkpad.kbd)43
-rw-r--r--hosts/pkgs.nix6
12 files changed, 366 insertions, 152 deletions
diff --git a/derivations/fw-ectool/default.nix b/derivations/fw-ectool/default.nix
new file mode 100644
index 0000000..68aac91
--- /dev/null
+++ b/derivations/fw-ectool/default.nix
@@ -0,0 +1,45 @@
+{
+ stdenv,
+ lib,
+ fetchFromGitHub,
+ cmake,
+ pkg-config,
+ libusb1,
+ libftdi1,
+}:
+stdenv.mkDerivation {
+ pname = "fw-ectool";
+ version = "0-unstable-2024-04-23";
+
+ src = fetchFromGitHub {
+ owner = "polwex";
+ repo = "ectool";
+ rev = "abdd574ebe3640047988cb928bb6789a15dd1390";
+ hash = "sha256-j0Z2Uo1LBXlHZVHPm4Xjx3LZaI6Qq0nSdViyC/CjWC8=";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkg-config
+ ];
+
+ buildInputs = [
+ libusb1
+ libftdi1
+ ];
+
+ installPhase = ''
+ runHook preInstall
+ install -Dm555 src/ectool "$out/bin/ectool"
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ description = "EC-Tool adjusted for usage with framework embedded controller";
+ homepage = "https://gitlab.howett.net/DHowett/ectool";
+ license = licenses.bsd3;
+ maintainers = [maintainers.mkg20001];
+ platforms = platforms.linux;
+ mainProgram = "ectool";
+ };
+}
diff --git a/devenv.lock b/devenv.lock
deleted file mode 100644
index 0b61657..0000000
--- a/devenv.lock
+++ /dev/null
@@ -1,103 +0,0 @@
-{
- "nodes": {
- "devenv": {
- "locked": {
- "dir": "src/modules",
- "lastModified": 1743783972,
- "owner": "cachix",
- "repo": "devenv",
- "rev": "2f53e2f867e0c2ba18b880e66169366e5f8ca554",
- "type": "github"
- },
- "original": {
- "dir": "src/modules",
- "owner": "cachix",
- "repo": "devenv",
- "type": "github"
- }
- },
- "flake-compat": {
- "flake": false,
- "locked": {
- "lastModified": 1733328505,
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "git-hooks": {
- "inputs": {
- "flake-compat": "flake-compat",
- "gitignore": "gitignore",
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1742649964,
- "owner": "cachix",
- "repo": "git-hooks.nix",
- "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "git-hooks.nix",
- "type": "github"
- }
- },
- "gitignore": {
- "inputs": {
- "nixpkgs": [
- "git-hooks",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1709087332,
- "owner": "hercules-ci",
- "repo": "gitignore.nix",
- "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "gitignore.nix",
- "type": "github"
- }
- },
- "nixpkgs": {
- "locked": {
- "lastModified": 1733477122,
- "owner": "cachix",
- "repo": "devenv-nixpkgs",
- "rev": "7bd9e84d0452f6d2e63b6e6da29fe73fac951857",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "ref": "rolling",
- "repo": "devenv-nixpkgs",
- "type": "github"
- }
- },
- "root": {
- "inputs": {
- "devenv": "devenv",
- "git-hooks": "git-hooks",
- "nixpkgs": "nixpkgs",
- "pre-commit-hooks": [
- "git-hooks"
- ]
- }
- }
- },
- "root": "root",
- "version": 7
-}
diff --git a/flake.nix b/flake.nix
index f0f8d37..85a7535 100644
--- a/flake.nix
+++ b/flake.nix
@@ -33,10 +33,10 @@
# inputs.nixpkgs.follows = "nixpkgs";
# inputs.flake-utils.follows = "flake-utils";
# };
- agenix = {
- url = "github:yaxitech/ragenix";
- inputs.nixpkgs.follows = "nixpkgs";
- };
+ # agenix = {
+ # url = "github:yaxitech/ragenix";
+ # inputs.nixpkgs.follows = "nixpkgs";
+ # };
nix-gaming.url = "github:fufexan/nix-gaming";
disko = {
url = "github:nix-community/disko";
@@ -65,7 +65,10 @@
homix = {
url = "github:homix-community/homix";
};
- kmonad.url = "github:kmonad/kmonad?dir=nix";
+ kmonad = {
+ url = "github:kmonad/kmonad?dir=nix";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
helix.url = "github:helix-editor/helix";
waybar = {
url = "github:alexays/waybar";
diff --git a/hosts/local/fw11/configuration.nix b/hosts/local/fw11/configuration.nix
index 11c09d1..71eef5d 100644
--- a/hosts/local/fw11/configuration.nix
+++ b/hosts/local/fw11/configuration.nix
@@ -25,9 +25,10 @@
../../base.nix
../../linux.nix
# ../../syncthing.nix
- # ../../unfree.nix
- # ../wayland.nix
- # ./keyboard.nix
+ ../../unfree.nix
+ ../niri.nix
+ ../gui.nix
+ ./keyboard.nix
# ../android.nix
];
@@ -52,13 +53,14 @@
boot.loader.efi.canTouchEfiVariables = true;
# boot.supportedFilesystems = ["ntfs"];
# boot.kernelPackages = lib.mkForce unfreePkgs.linuxKernel.packages.linux_xanmod_latest;
- # boot.kernelPackages = pkgs.linuxPackages_latest;
- boot.kernelPackages = pkgs.linuxPackages_6_12;
+ boot.kernelPackages = pkgs.linuxPackages_latest;
+ # boot.kernelPackages = pkgs.linuxPackages_6_12;
services.fprintd.enable = true;
networking = {
hostName = "fw-nixos"; # Define your hostname.
firewall.enable = false;
+ nameservers = ["8.8.8.8" "8.8.4.4"];
};
nix.settings.trusted-users = ["root" "y"];
diff --git a/hosts/local/fw11/hardware-configuration.bkp b/hosts/local/fw11/hardware-configuration.bkp
new file mode 100644
index 0000000..359ff8f
--- /dev/null
+++ b/hosts/local/fw11/hardware-configuration.bkp
@@ -0,0 +1,40 @@
+# 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" "thunderbolt" "nvme" "usb_storage" "sd_mod" ];
+ boot.initrd.kernelModules = [ "i915" "8821cu"];
+ boot.kernelModules = [ "kvm-intel" ];
+ boot.extraModulePackages = [ config.boot.kernelPackages.rtl8821cu ];
+ # to modeswitch usb dongle sudo usb_modeswitch -KW -v 0bda -p 1a2b
+
+ fileSystems."/" =
+ { device = "/dev/disk/by-uuid/176785ba-cd35-4d09-b7df-37e8b9843c33";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/043D-21E3";
+ fsType = "vfat";
+ options = ["fmask=0077" "dmask=0077"];
+ };
+
+ swapDevices =
+ [
+ ];
+
+ # The global useDHCP flag is deprecated, therefore explicitly set to false here.
+ # Per-interface useDHCP will be mandatory in the future, so this generated config
+ # replicates the default behaviour.
+ networking.useDHCP = lib.mkDefault false;
+ networking.interfaces.wlp170s0.useDHCP = lib.mkDefault true;
+
+ powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
+ hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+}
diff --git a/hosts/local/fw11/hardware-configuration.nix b/hosts/local/fw11/hardware-configuration.nix
index 359ff8f..049c395 100644
--- a/hosts/local/fw11/hardware-configuration.nix
+++ b/hosts/local/fw11/hardware-configuration.nix
@@ -8,11 +8,10 @@
[ (modulesPath + "/installer/scan/not-detected.nix")
];
- boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ];
- boot.initrd.kernelModules = [ "i915" "8821cu"];
+ boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usbhid" ];
+ boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
- boot.extraModulePackages = [ config.boot.kernelPackages.rtl8821cu ];
- # to modeswitch usb dongle sudo usb_modeswitch -KW -v 0bda -p 1a2b
+ boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/176785ba-cd35-4d09-b7df-37e8b9843c33";
@@ -22,19 +21,13 @@
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/043D-21E3";
fsType = "vfat";
- options = ["fmask=0077" "dmask=0077"];
+ options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices =
- [
+ [ { device = "/dev/disk/by-uuid/643ac019-fac1-4dad-84d9-e50380baff2b"; }
];
- # The global useDHCP flag is deprecated, therefore explicitly set to false here.
- # Per-interface useDHCP will be mandatory in the future, so this generated config
- # replicates the default behaviour.
- networking.useDHCP = lib.mkDefault false;
- networking.interfaces.wlp170s0.useDHCP = lib.mkDefault true;
-
- powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}
diff --git a/hosts/local/fw11/keyboard.nix b/hosts/local/fw11/keyboard.nix
index ce875dd..f078258 100644
--- a/hosts/local/fw11/keyboard.nix
+++ b/hosts/local/fw11/keyboard.nix
@@ -1,8 +1,8 @@
{pkgs, ...}: {
- services.logind.extraConfig = ''
+ services.logind.settings.Login = {
# don’t shutdown when power button is short-pressed
- HandlePowerKey=ignore
- '';
+ HandlePowerKey = "ignore";
+ };
# config file keeps getting rewritten but I don't know by who
i18n.inputMethod = {
@@ -36,7 +36,7 @@
usbThinkpad = {
# device = "/dev/input/by-id/usb-Lenovo_ThinkPad_Compact_USB_Keyboard_with_TrackPoint-event-kbd";
device = "/dev/input/by-id/usb-Lenovo_TrackPoint_Keyboard_II-event-kbd";
- config = builtins.readFile ./thinkpad.kbd;
+ config = builtins.readFile ../thinkpad.kbd;
};
};
};
diff --git a/hosts/local/gui.nix b/hosts/local/gui.nix
index 59676c1..26adeb1 100644
--- a/hosts/local/gui.nix
+++ b/hosts/local/gui.nix
@@ -4,6 +4,7 @@
...
}: {
environment.systemPackages = with pkgs; [
+ pavucontrol
#terminals
kitty
alacritty
diff --git a/hosts/local/niri.nix b/hosts/local/niri.nix
new file mode 100644
index 0000000..7db141e
--- /dev/null
+++ b/hosts/local/niri.nix
@@ -0,0 +1,224 @@
+{
+ inputs,
+ pkgs,
+ ...
+}: {
+ nixpkgs.config.packageOVerrides = pkgs: {
+ intel-vaapi-driver = pkgs.intel-vaapi-driver.override {enableHybridCodec = true;};
+ vaapiIntel = pkgs.vaapiIntel.override {enableHybridCodec = true;};
+ };
+ hardware.graphics = {
+ enable = true;
+ enable32Bit = true;
+ extraPackages = [
+ pkgs.mesa
+ pkgs.vaapiVdpau
+ pkgs.libvdpau-va-gl
+ ];
+ };
+ programs.niri = {
+ enable = true;
+ };
+
+ environment.variables = {
+ WLR_NO_HARDWARE_CURSOR = "1";
+ };
+ environment.sessionVariables = {
+ WLR_NO_HARDWARE_CURSOR = "1";
+ NIXOS_OZONE_WL = "1";
+ SDL_VIDEODRIVER = "wayland";
+ QT_QPA_PLATFORM = "wayland";
+ QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
+ _JAVA_AWT_WM_NONREPARENTING = "1";
+ MOZ_ENABLE_WAYLAND = "1";
+
+ # GTK_IM_MODULE = "fcitx";
+ # QT_IM_MODULE = "fcitx";
+ # SDL_IM_MODULE = "fcitx";
+
+ XDG_CURRENT_DESKTOP = "sway";
+ GDK_BACKEND = "wayland";
+ XDG_SESSION_TYPE = "wayland";
+ XMODIFIERS = "@im=fcitx";
+ };
+
+ xdg.portal = {
+ enable = true;
+ extraPortals = with pkgs; [
+ # xdg-desktop-portal-hyprland
+ # xdg-desktop-portal-cosmic
+ xdg-desktop-portal-gtk
+ xdg-desktop-portal-gnome
+ ];
+ config = {
+ common = {
+ default = [
+ "gnome"
+ "gtk"
+ ];
+ "org.freedesktop.impl.portal.Access" = ["gtk"];
+ "org.freedesktop.impl.portal.Notification" = ["gtk"];
+ "org.freedesktop.impl.portal.Secret" = ["gnome-keyring"];
+ "org.freedesktop.impl.portal.FileChooser" = ["gtk"];
+ };
+ };
+ };
+ environment.systemPackages = with pkgs; [
+ quickshell
+ cosmic-panel
+ fuzzel
+ #
+ cliphist
+ hypridle
+ hyprlock
+ networkmanagerapplet
+ playerctl
+ qalculate-gtk
+ swaynotificationcenter
+ swayosd
+ syncthingtray
+ wl-clipboard
+ wl-clip-persist
+ wl-color-picker
+ wofi-power-menu
+
+ # xdg-utils
+ # xdg-desktop-portal
+ # xdg-desktop-portal-wlr
+ # xdg-desktop-portal-gtk
+ # # calibre
+ # # nyxt
+ # wofi
+ # imv
+ # swaylock
+ # brightnessctl
+ # swayidle
+ # foot
+ # mako
+ # kanshi
+ # grim
+ # slurp
+ # wl-clipboard
+ # wf-recorder
+ # viewnior
+ # playerctl
+ # blueman
+ # wdisplays
+ # inputs.waybar.packages.x86_64-linux.default
+ # glxinfo
+ # vulkan-tools
+ # glmark2
+ # intel-media-driver
+ # intel-vaapi-driver
+ # pavucontrol
+ # # icons
+ # polkit_gnome
+ # gnome-themes-extra
+ # gtk-engine-murrine
+ # gtk_engines
+ # gsettings-desktop-schemas
+ # lxappearance
+ # adwaita-qt
+ # adwaita-icon-theme
+ # libcamera # pipewire seems to want this
+ # easyeffects
+ # tigervnc
+ # foliate
+ # # code
+ # kdePackages.kompare
+ # meld
+ # # tmp
+ # # browser TTS
+ # # speechd
+ # # espeak-ng
+ # # espeak-ng-data
+ # wineWowPackages.waylandFull
+ # libcamera # pipewire seems to want this
+ # tracy # cool system watcher
+ ];
+ services.speechd.enable = true;
+
+ # cjk input
+
+ i18n.inputMethod = {
+ type = "fcitx5";
+ enable = true;
+ fcitx5 = {
+ # enabled = true;
+ addons = with pkgs; [
+ rime-data
+ fcitx5-rime
+ fcitx5-mozc
+ fcitx5-configtool
+ fcitx5-chinese-addons
+ fcitx5-gtk
+ ];
+ waylandFrontend = true;
+ };
+ };
+ services.xserver.desktopManager.runXdgAutostartIfNone = true;
+
+ fonts = {
+ enableDefaultPackages = true;
+ fontconfig = {
+ defaultFonts.emoji = ["Noto Color Emoji"];
+ defaultFonts.monospace = ["Hack" "Sarasa Mono SC"];
+ defaultFonts.sansSerif = ["DejaVu Sans"];
+ defaultFonts.serif = ["DejaVu Serif" "Source Han Serif SC"];
+ };
+ packages = with pkgs;
+ [
+ fira-code
+ fira
+ cooper-hewitt
+ ibm-plex
+ jetbrains-mono
+ iosevka
+ spleen
+ fira-code-symbols
+ powerline-fonts
+ arphic-ukai
+ arphic-uming
+ dejavu_fonts
+ font-awesome
+ inconsolata # monospaced
+ noto-fonts
+ noto-fonts-cjk-sans
+ noto-fonts-emoji
+ noto-fonts-extra
+ powerline-fonts
+ source-han-sans-japanese
+ source-han-sans-korean
+ source-han-sans-simplified-chinese
+ source-han-sans-traditional-chinese
+ source-sans-pro
+ ubuntu_font_family
+ wqy_microhei
+ wqy_zenhei
+ ]
+ ++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
+ };
+
+ # screen capture
+ #
+
+ services.dbus.enable = true;
+ ## Remove sound.enable or set it to false if you had it set previously, as sound.enable is only meant for ALSA-based configurations
+
+ # rtkit is optional but recommended
+ security.rtkit.enable = true;
+ services.pipewire = {
+ enable = true;
+ alsa.enable = true;
+ alsa.support32Bit = true;
+ pulse.enable = true;
+ wireplumber.enable = true;
+ # If you want to use JACK applications, uncomment this
+ jack.enable = true;
+ };
+
+ # pipewire requires these off
+ # sound.enable = true;
+ # hardware.pulseaudio.enable = true;
+ # hardware.bluetooth.enable = true;
+}
diff --git a/hosts/local/wayland.nix b/hosts/local/sway.nix
index c33bf23..e881fec 100644
--- a/hosts/local/wayland.nix
+++ b/hosts/local/sway.nix
@@ -11,7 +11,7 @@
enable = true;
enable32Bit = true;
extraPackages = [
- pkgs.mesa.drivers
+ pkgs.mesa
pkgs.vaapiVdpau
pkgs.libvdpau-va-gl
];
@@ -43,7 +43,7 @@
playerctl
blueman
wdisplays
- inputs.nixpkgs-wayland.packages.x86_64-linux.waybar
+ inputs.waybar.packages.x86_64-linux.default
glxinfo
vulkan-tools
glmark2
diff --git a/hosts/local/fw11/thinkpad.kbd b/hosts/local/thinkpad.kbd
index 7fb53d2..e7bb184 100644
--- a/hosts/local/fw11/thinkpad.kbd
+++ b/hosts/local/thinkpad.kbd
@@ -18,12 +18,13 @@ 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 del
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 home end ins del
` 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
+ lsft z x c v b n m , . / rsft
+ lctl lmet lalt spc ralt rctl pgup up pgdn
+ left down right
)
;; Aliases
@@ -55,47 +56,51 @@ semi (tap-hold-next-release 280 ; rctl)
;; 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 del
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 home end ins del
` 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
+ lsft z x c v b n m , . / rsft
+ lctl lmet @sym spc @cords @hrt pgup up pgdn
+ left down right
)
(deflayer homerowmods
- esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 del
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 home end ins del
` 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
+ lsft z x c v b n m , . / rsft
+ lctl lmet @sym spc lalt @back pgup up pgdn
+ left down right
)
(deflayer mods
- esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 del
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 pgup pgdn ins del
` 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
-)
+ lsft z x c v b n m , . / rsft
+ lctl lmet @sym spc lalt @back pgup up pgdn
+ left down right
+)
;; A layer dedicated to symbols
(deflayer syms
- _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 pgup pgdn ins del
_ _ _ _ _ _ _ _ _ _ _ _ _ _
- _ _ _ up _ _ ! @ # $ % _ _ _
- _ _ left down right @sym2 ' ^ & - = _ ret
+ _ _ _ up _ _ ! @ # $ % pgup _ _
+ _ _ left down right @sym2 ' ^ & - = pgdn ret
_ _ _ _ _ _ \( [ { < \ _ _
- _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ pgup pgup pgdn
+ l pgdn l
)
;; More symbols
(deflayer syms2
- _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 pgup pgdn ins del
_ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ ` ~ * \_ + _ ret
_ _ _ _ _ _ \) ] } > | _ _
- _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _
)
diff --git a/hosts/pkgs.nix b/hosts/pkgs.nix
index 66a6ec0..436851a 100644
--- a/hosts/pkgs.nix
+++ b/hosts/pkgs.nix
@@ -7,6 +7,7 @@
environment.systemPackages = with pkgs;
[
# networking
+ lynx
minio
minio-client
curlFull
@@ -71,10 +72,12 @@
# aider-chat
# inputs.yek.packages.x86_64-linux.default
# python312Packages.google-generativeai
- yek
+ bun
claude-code
codex
nushell
+ ast-grep
+ diffsitter
# inputs.gemini-cli.packages.x86_64-linux.default
#
# ai
@@ -113,4 +116,5 @@
gnumake
bun
];
+ # ++ (with pkgs; [devenv]);
}