From 2f135dbb95d4881969ba3052332081cce13429d3 Mon Sep 17 00:00:00 2001 From: randomuser Date: Sun, 4 Feb 2024 07:48:42 -0600 Subject: [PATCH 1/4] add support for x230(t), also vscodium --- boxes/x230t/default.nix | 2 ++ builds/utils.nix | 5 +++-- builds/utils/sh/keyboard | 1 + builds/utils/sh/musexplore | 8 +++++++ builds/utils/sh/tabletmenu | 46 ++++++++++++++++++++++++++++++++++++++ home/sxhkd/sxhkdrc | 3 +++ 6 files changed, 63 insertions(+), 2 deletions(-) create mode 100755 builds/utils/sh/musexplore create mode 100755 builds/utils/sh/tabletmenu diff --git a/boxes/x230t/default.nix b/boxes/x230t/default.nix index f7c1a72..b3fdb97 100644 --- a/boxes/x230t/default.nix +++ b/boxes/x230t/default.nix @@ -23,6 +23,8 @@ isync khal todoman + lisgd + vscodium ]; hardware.bluetooth = { diff --git a/builds/utils.nix b/builds/utils.nix index 50ee3ac..e2bff87 100644 --- a/builds/utils.nix +++ b/builds/utils.nix @@ -16,6 +16,7 @@ , curl , ytfzf , xrandr +, svkbd }: stdenv.mkDerivation rec { @@ -25,7 +26,7 @@ stdenv.mkDerivation rec { src = ./utils; nativeBuildInputs = [ makeWrapper pkg-config libxcb ]; - buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ffmpeg sshuttle ]; + buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ffmpeg sshuttle svkbd ]; buildPhase = '' ls @@ -38,7 +39,7 @@ stdenv.mkDerivation rec { for i in $(ls $src/sh); do cp $src/sh/$i $out/bin ln -sf $out/bin/tmenu_run $out/bin/regenerate - wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ffmpeg sshuttle ]} + wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ffmpeg sshuttle svkbd ]} done cp c/status/main $out/bin/statusbar diff --git a/builds/utils/sh/keyboard b/builds/utils/sh/keyboard index 4917d4f..0ce2ebc 100755 --- a/builds/utils/sh/keyboard +++ b/builds/utils/sh/keyboard @@ -4,4 +4,5 @@ setxkbmap -option caps:super killall xcape xcape -e 'Super_L=Escape' xset -q | grep "Caps Lock:\s*on" && xdotool key Caps_Lock +xset -r 161 # tablet rotate key doesn't need repeat xset r rate 200 40 diff --git a/builds/utils/sh/musexplore b/builds/utils/sh/musexplore new file mode 100755 index 0000000..952cdf3 --- /dev/null +++ b/builds/utils/sh/musexplore @@ -0,0 +1,8 @@ +#!/bin/sh + +svkbd-mobile-intl & +choice=$(ls ~/doc/music/works | tmenu) +kill %1 +if [ -n "$choice" ]; then + find "$HOME/doc/music/works/$choice/" -type f | sxiv -i +fi diff --git a/builds/utils/sh/tabletmenu b/builds/utils/sh/tabletmenu new file mode 100755 index 0000000..337d0f2 --- /dev/null +++ b/builds/utils/sh/tabletmenu @@ -0,0 +1,46 @@ +svkbd-mobile-intl & + +choice=$( + printf " +vert-mode +hori-mode +keyb +nokeyb +musexplore +brave +chromium +close-wind + " | tmenu +) + +pkill svkbd + +case "$choice" in + "vert-mode") + xrandr --output LVDS-1 --rotate left + xinput set-prop "Wacom ISDv4 E6 Finger" 178 0 -1 1 1 0 0 0 0 1 + sleep 4 + ;; + "hori-mode") + xrandr --output LVDS-1 --rotate normal + xinput set-prop "Wacom ISDv4 E6 Finger" 178 1 0 0 0 1 0 0 0 1 + ;; + "nokeyb") + pkill svkbd + ;; + "keyb") + svkbd-mobile-intl & disown + ;; + "musexplore") + musexplore + ;; + "brave") + brave + ;; + "chromium") + chromium + ;; + "close-wind") + bspc node -c + ;; +esac diff --git a/home/sxhkd/sxhkdrc b/home/sxhkd/sxhkdrc index 6f0222d..9b3ed90 100644 --- a/home/sxhkd/sxhkdrc +++ b/home/sxhkd/sxhkdrc @@ -46,3 +46,6 @@ super + {_,shift + } {1-9,0} # change a node to tiling, floating, or fullscreen super + {t,f,s} bspc node -t {tiled,floating,fullscreen} + +XF86RotateWindows + tabletmenu From 6e41fc9ccafbffb42d80a33069d53a9677dfb1c8 Mon Sep 17 00:00:00 2001 From: randomuser Date: Mon, 5 Feb 2024 17:16:18 -0600 Subject: [PATCH 2/4] changes --- builds/utils.nix | 5 +++-- home/ssh/config | 23 ++++++++++++++++++++--- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/builds/utils.nix b/builds/utils.nix index e2bff87..4a2c256 100644 --- a/builds/utils.nix +++ b/builds/utils.nix @@ -17,6 +17,7 @@ , ytfzf , xrandr , svkbd +, libsForQt5 }: stdenv.mkDerivation rec { @@ -26,7 +27,7 @@ stdenv.mkDerivation rec { src = ./utils; nativeBuildInputs = [ makeWrapper pkg-config libxcb ]; - buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ffmpeg sshuttle svkbd ]; + buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ffmpeg sshuttle svkbd libsForQt5.kolourpaint ]; buildPhase = '' ls @@ -39,7 +40,7 @@ stdenv.mkDerivation rec { for i in $(ls $src/sh); do cp $src/sh/$i $out/bin ln -sf $out/bin/tmenu_run $out/bin/regenerate - wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ffmpeg sshuttle svkbd ]} + wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ffmpeg sshuttle svkbd libsForQt5.kolourpaint ]} done cp c/status/main $out/bin/statusbar diff --git a/home/ssh/config b/home/ssh/config index 90fcda3..059b3f2 100644 --- a/home/ssh/config +++ b/home/ssh/config @@ -1,4 +1,21 @@ -Host main +Host mainsail + HostName 192.168.1.100 + User usr + Port 22 + +Host netbox HostName beepboop.systems - User useracc - Port 55555 + User ryan + Port 443 + +Host mainsail-prox + HostName localhost + User usr + Port 55554 + ProxyJump netbox + +Host mlg-prox + HostName localhost + User usr + Port 2222 + ProxyJump mainsail-prox From 7408a907203e788159c8a1ca0856b23ef2c21f42 Mon Sep 17 00:00:00 2001 From: randomuser Date: Tue, 6 Feb 2024 19:45:32 -0600 Subject: [PATCH 3/4] some changes, redo nginx --- boxes/netbox/default.nix | 3 ++- boxes/x230t/default.nix | 11 +++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/boxes/netbox/default.nix b/boxes/netbox/default.nix index df402c1..9b279ce 100644 --- a/boxes/netbox/default.nix +++ b/boxes/netbox/default.nix @@ -340,8 +340,9 @@ in { return 301 https://mail.beepboop.systems; ''; }; - locations."~ \\.git" = { + locations."~* ^(.*)\\.git(/.*)?$" = { extraConfig = '' + set $modified_path $1$2; client_max_body_size 0; include ${pkgs.nginx}/conf/fastcgi_params; diff --git a/boxes/x230t/default.nix b/boxes/x230t/default.nix index b3fdb97..ba421d7 100644 --- a/boxes/x230t/default.nix +++ b/boxes/x230t/default.nix @@ -40,10 +40,13 @@ services.getty.autologinUser = "usr"; boot.loader = { - grub.timeoutStyle = "hidden"; - timeout = 0; - grub.enable = true; - grub.device = "/dev/sda"; + grub = { + timeoutStyle = "hidden"; + enable = true; + device = "/dev/sda"; + splashImage = null; + }; + timeout = 1; }; hardware.pulseaudio.enable = true; From f481fd5f3f58fe7ac42fb5d07703be8d59fb4502 Mon Sep 17 00:00:00 2001 From: randomuser Date: Fri, 9 Feb 2024 23:33:03 -0600 Subject: [PATCH 4/4] add nix-on-droid configuration --- boxes/phone/bootstrap.nix | 7 ++ boxes/phone/default.nix | 31 ++++++++ boxes/phone/home.nix | 10 +++ flake.lock | 154 ++++++++++++++++++++++++++++++++++++++ flake.nix | 20 ++++- 5 files changed, 221 insertions(+), 1 deletion(-) create mode 100644 boxes/phone/bootstrap.nix create mode 100644 boxes/phone/default.nix create mode 100644 boxes/phone/home.nix diff --git a/boxes/phone/bootstrap.nix b/boxes/phone/bootstrap.nix new file mode 100644 index 0000000..c6a5f97 --- /dev/null +++ b/boxes/phone/bootstrap.nix @@ -0,0 +1,7 @@ +{ config, pkgs, ... }: + +{ + nix.extraOptions = '' + experimental-features = nix-command flakes + ''; +} diff --git a/boxes/phone/default.nix b/boxes/phone/default.nix new file mode 100644 index 0000000..c002122 --- /dev/null +++ b/boxes/phone/default.nix @@ -0,0 +1,31 @@ +{ config, lib, pkgs, ... }: + +{ + imports = [ + ./bootstrap.nix + ]; + + home-manager = { + backupFileExtension = "hm-bak"; + useGlobalPkgs = true; + + config = ./home.nix; + }; + + # Simply install just the packages + environment.packages = with pkgs; [ + # User-facing stuff that you really really want to have + + git + tmux + hostname + ]; + + environment.etcBackupExtension = ".bak"; + + # Read the changelog before changing this value + system.stateVersion = "23.05"; + + # Set your time zone + time.timeZone = "America/Chicago"; +} diff --git a/boxes/phone/home.nix b/boxes/phone/home.nix new file mode 100644 index 0000000..3b5812f --- /dev/null +++ b/boxes/phone/home.nix @@ -0,0 +1,10 @@ +{ lib, pkgs, home, ... }: +{ + imports = [ + ../../home/nvim + ../../home/ssh + ../../home/git # needed for flakes + ]; + + home.stateVersion = "23.05"; +} diff --git a/flake.lock b/flake.lock index 4a4fb6f..44a37b6 100644 --- a/flake.lock +++ b/flake.lock @@ -91,6 +91,77 @@ "type": "github" } }, + "home-manager-phone": { + "inputs": { + "nixpkgs": [ + "phone-nixpkgs" + ] + }, + "locked": { + "lastModified": 1702195668, + "narHash": "sha256-Lxmjez0nfNBptdqV5GsXKm7Bb7swjGsrxiLxWJu0tL8=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "33110fb3c7fe6a94b98b641866a5eddb64b7c23f", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "release-23.05", + "repo": "home-manager", + "type": "github" + } + }, + "nix-formatter-pack": { + "inputs": { + "nixpkgs": [ + "nix-on-droid", + "nixpkgs" + ], + "nmd": "nmd", + "nmt": "nmt" + }, + "locked": { + "lastModified": 1666720474, + "narHash": "sha256-iWojjDS1D19zpeZXbBdjWb9MiKmVVFQCqtJmtTXgPx8=", + "owner": "Gerschtli", + "repo": "nix-formatter-pack", + "rev": "14876cc8fe94a3d329964ecb073b4c988c7b61f5", + "type": "github" + }, + "original": { + "owner": "Gerschtli", + "repo": "nix-formatter-pack", + "type": "github" + } + }, + "nix-on-droid": { + "inputs": { + "home-manager": [ + "home-manager-phone" + ], + "nix-formatter-pack": "nix-formatter-pack", + "nixpkgs": [ + "phone-nixpkgs" + ], + "nixpkgs-for-bootstrap": "nixpkgs-for-bootstrap", + "nmd": "nmd_2" + }, + "locked": { + "lastModified": 1688144254, + "narHash": "sha256-8KL1l/7eP2Zm1aJjdVaSOk0W5kTnJo9kcgW03gqWuiI=", + "owner": "t184256", + "repo": "nix-on-droid", + "rev": "2301e01d48c90b60751005317de7a84a51a87eb6", + "type": "github" + }, + "original": { + "owner": "t184256", + "ref": "release-23.05", + "repo": "nix-on-droid", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1706098335, @@ -137,6 +208,22 @@ "type": "indirect" } }, + "nixpkgs-for-bootstrap": { + "locked": { + "lastModified": 1686921029, + "narHash": "sha256-J1bX9plPCFhTSh6E3TWn9XSxggBh/zDD4xigyaIQBy8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "c7ff1b9b95620ce8728c0d7bd501c458e6da9e04", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "c7ff1b9b95620ce8728c0d7bd501c458e6da9e04", + "type": "github" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1705856552, @@ -152,11 +239,78 @@ "type": "indirect" } }, + "nmd": { + "flake": false, + "locked": { + "lastModified": 1666190571, + "narHash": "sha256-Z1hc7M9X6L+H83o9vOprijpzhTfOBjd0KmUTnpHAVjA=", + "owner": "rycee", + "repo": "nmd", + "rev": "b75d312b4f33bd3294cd8ae5c2ca8c6da2afc169", + "type": "gitlab" + }, + "original": { + "owner": "rycee", + "repo": "nmd", + "type": "gitlab" + } + }, + "nmd_2": { + "flake": false, + "locked": { + "lastModified": 1666190571, + "narHash": "sha256-Z1hc7M9X6L+H83o9vOprijpzhTfOBjd0KmUTnpHAVjA=", + "owner": "rycee", + "repo": "nmd", + "rev": "b75d312b4f33bd3294cd8ae5c2ca8c6da2afc169", + "type": "gitlab" + }, + "original": { + "owner": "rycee", + "repo": "nmd", + "type": "gitlab" + } + }, + "nmt": { + "flake": false, + "locked": { + "lastModified": 1648075362, + "narHash": "sha256-u36WgzoA84dMVsGXzml4wZ5ckGgfnvS0ryzo/3zn/Pc=", + "owner": "rycee", + "repo": "nmt", + "rev": "d83601002c99b78c89ea80e5e6ba21addcfe12ae", + "type": "gitlab" + }, + "original": { + "owner": "rycee", + "repo": "nmt", + "type": "gitlab" + } + }, + "phone-nixpkgs": { + "locked": { + "lastModified": 1704290814, + "narHash": "sha256-LWvKHp7kGxk/GEtlrGYV68qIvPHkU9iToomNFGagixU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "70bdadeb94ffc8806c0570eb5c2695ad29f0e421", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-23.05", + "repo": "nixpkgs", + "type": "github" + } + }, "root": { "inputs": { "firefox-addons": "firefox-addons", "home-manager": "home-manager", + "home-manager-phone": "home-manager-phone", + "nix-on-droid": "nix-on-droid", "nixpkgs": "nixpkgs", + "phone-nixpkgs": "phone-nixpkgs", "simple-nixos-mailserver": "simple-nixos-mailserver" } }, diff --git a/flake.nix b/flake.nix index ebcd34a..7b8f4c7 100644 --- a/flake.nix +++ b/flake.nix @@ -3,10 +3,15 @@ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11"; + phone-nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.05"; home-manager = { url = "github:nix-community/home-manager/release-23.11"; inputs.nixpkgs.follows = "nixpkgs"; }; + home-manager-phone = { + url = "github:nix-community/home-manager/release-23.05"; + inputs.nixpkgs.follows = "phone-nixpkgs"; + }; firefox-addons = { url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons"; inputs.nixpkgs.follows = "nixpkgs"; @@ -14,9 +19,22 @@ simple-nixos-mailserver = { url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-23.11"; }; + nix-on-droid = { + url = "github:t184256/nix-on-droid/release-23.05"; + inputs.nixpkgs.follows = "phone-nixpkgs"; + inputs.home-manager.follows = "home-manager-phone"; + }; }; - outputs = { self, nixpkgs, home-manager, firefox-addons, simple-nixos-mailserver, ... }@inputs: { + outputs = { self, nixpkgs, phone-nixpkgs, home-manager, home-manager-phone, firefox-addons, simple-nixos-mailserver, nix-on-droid, ... }@inputs: { + nixOnDroidConfigurations = { + phone = nix-on-droid.lib.nixOnDroidConfiguration { + modules = [ + ./boxes/phone + ]; + }; + }; + nixosConfigurations = { netbox = nixpkgs.lib.nixosSystem { system = "x86_64-linux";