commit e3e1a646c8f1e5d4402d29d5881815bd36b75c24 from: mtmn date: Mon Jul 27 23:34:20 2026 UTC fix nota file handler, prek ignore npins, etc. commit - 5ca4c34ffb274b4ece0f2669d0aec5ba514baa6d commit + e3e1a646c8f1e5d4402d29d5881815bd36b75c24 blob - 90022d7d96cdcdf8352f6ec9061f8fe1ff7bc413 blob + ae713d5a60955308932884059c11ebcd02017ede --- flake.lock +++ flake.lock @@ -24,6 +24,22 @@ "type": "github" } }, + "beaker": { + "flake": false, + "locked": { + "lastModified": 1780436704, + "narHash": "sha256-3aMH1YblnpiXKdkQVMRLmMZ5/8G7vB4HAfLg7+izyHg=", + "ref": "refs/heads/master", + "rev": "360d6271e1a20d128430e52637d5d35f4c706ca5", + "revCount": 34, + "type": "git", + "url": "https://git.bwaaa.monster/beaker" + }, + "original": { + "type": "git", + "url": "https://git.bwaaa.monster/beaker" + } + }, "corpus": { "inputs": { "elm2nix": "elm2nix", @@ -164,11 +180,11 @@ ] }, "locked": { - "lastModified": 1785158503, - "narHash": "sha256-vEhDKc9JYVGH5CO4nbfqIZmsWiDKLPFReYK6emsFK5U=", + "lastModified": 1785168662, + "narHash": "sha256-kGJTc0oEUQuEwV66lSlMxYtOEtpk9N/HS43k+rFAvs8=", "owner": "nix-community", "repo": "home-manager", - "rev": "0c486d2b21bb1e4d0e5a11e374deb51587267387", + "rev": "cbb77679b3d992c8b62f884cd3a84af534a28621", "type": "github" }, "original": { @@ -248,6 +264,29 @@ "type": "github" } }, + "omnisearch": { + "inputs": { + "beaker-src": [ + "beaker" + ], + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1783357409, + "narHash": "sha256-eolp0Msb3ACNatbenEJftjFlUoh/RfZDizv3GdetEsM=", + "ref": "refs/heads/master", + "rev": "9c68a8ae6fb32f8a1660da392b9985a4ab3e7cb4", + "revCount": 135, + "type": "git", + "url": "https://git.bwaaa.monster/omnisearch" + }, + "original": { + "type": "git", + "url": "https://git.bwaaa.monster/omnisearch" + } + }, "ragenix": { "inputs": { "agenix": "agenix", @@ -274,11 +313,13 @@ }, "root": { "inputs": { + "beaker": "beaker", "corpus": "corpus", "disko": "disko", "home-manager": "home-manager", "nix-index-database": "nix-index-database", "nixpkgs": "nixpkgs_2", + "omnisearch": "omnisearch", "ragenix": "ragenix", "shirts": "shirts" } blob - 7142ff72c84589551c8c52c4608b5014901cdfe6 blob + 6b064e39d5b41302a036ba58c19245a6a490b61b --- flake.nix +++ flake.nix @@ -33,6 +33,17 @@ url = "sourcehut:~mtmn/shirts"; inputs.nixpkgs.follows = "nixpkgs"; }; + + beaker = { + url = "git+https://git.bwaaa.monster/beaker"; + flake = false; + }; + + omnisearch = { + url = "git+https://git.bwaaa.monster/omnisearch"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.beaker-src.follows = "beaker"; + }; }; outputs = { blob - 602d7e5fb56ce52d647ad82cd8d54b567086e524 blob + 8116a81cf81ca4eadadd8856ff665ff17bdf9b0f Binary files hosts/nixaran/configuration.nix and hosts/nixaran/configuration.nix differ blob - db6945d67b14f3a2c98a70b9a342f68e3bd59480 blob + 0ec26662adfd2295bd67b1c594f3164ca8fcb4b3 --- hosts/void/default.nix +++ hosts/void/default.nix @@ -3,7 +3,7 @@ lib, ... }: { - imports = [../../modules/mixins/dotfiles ../../modules/mixins/core ../../modules/mixins/treesitter ./overlays]; + imports = [../../modules/mixins/dotfiles ../../modules/mixins/core ./overlays]; targets.genericLinux = { enable = true; blob - 6ca6012ed6f63d8410f2bd78812a66b8d42588b7 (mode 644) blob + /dev/null --- hosts/void/overlays/config/shepherd/init.d/swaybg.scm +++ /dev/null @@ -1,6 +0,0 @@ -;; -*- mode: scheme; -*- -(use-modules (helpers)) -(exec-service 'swaybg - (list "swaybg" "-m" "fill" "-c" "#000000" - "-i" (string-append (getenv "HOME") - "/misc/random/wallpapers/15.jpg"))) blob - /dev/null blob + 7c055f781fd498041d4476d5af9fcac127c710c5 (mode 644) --- /dev/null +++ hosts/void/overlays/config/shepherd/init.d/wbg.scm @@ -0,0 +1,6 @@ +;; -*- mode: scheme; -*- +(use-modules (helpers)) +(exec-service 'wbg + (list "wbg" + "/home/miro/misc/random/wallpapers/bru.jpg" + "--stretch")) blob - 2026b53411ab959e0804640b6adc37d2fe1a15fd (mode 644) blob + /dev/null --- hosts/void/overlays/config/shepherd/init.d/wayllpaper.scm +++ /dev/null @@ -1,6 +0,0 @@ -;; -*- mode: scheme; -*- -(use-modules (helpers)) -(exec-service 'wayllpaper - (list "wayllpaper" - "/home/miro/misc/random/wallpapers/sea.bin" - "3072" "1911")) blob - /dev/null blob + 87daa1d536bb0b0db32a557b34380f9c739a71fe (mode 644) --- /dev/null +++ hosts/void/overlays/config/shepherd/init.d/wl-gammarelay.scm @@ -0,0 +1,3 @@ +;; -*- mode: scheme; -*- +(use-modules (helpers)) +(exec-service 'hister '("wl-gammarelay")) blob - f9c9d33d839faf10f635bcf33ba08f2ee0ebc645 blob + cb2683ba5ae3ac50e33702496653d07de6cd341b --- hosts/void/overlays/config/volare/config +++ hosts/void/overlays/config/volare/config @@ -161,7 +161,7 @@ mode "resize" { exec shepherd -font Fragment Mono 10 +font Ttyp0 OTB 10 bar { position bottom blob - 8c41d77748d43fd75667642ce470e0995ae33a3e (mode 644) blob + 3abdb0da00dc3e83d27aa335baa8ddeb5e20351a (mode 755) --- modules/mixins/dotfiles/bin/nota +++ modules/mixins/dotfiles/bin/nota @@ -15,10 +15,12 @@ ls) ;; esac +is_date=0 unsanitised_name=${1:-today} case $unsanitised_name in *' days ago' | yesterday | tomorrow | today) unsanitised_name=$(date -d "$unsanitised_name" +%F) + is_date=1 ;; esac @@ -30,4 +32,9 @@ if ((NOTA_READ_ONLY)); then fi mkdir -p "$dir" -exec emacs -nw --eval "(progn (require 'denote-journal) (let ((denote-directory \"$dir\")) (denote-journal-new-or-existing-entry \"$name\")))" + +if [ "$is_date" -eq 1 ]; then + exec emacs -nw --eval "(progn (require 'denote-journal) (let ((denote-directory \"$dir\")) (denote-journal-new-or-existing-entry \"$name\")))" +else + exec emacs -nw "$dir/$file" +fi blob - 51a40a204e0a95e3a77058b27723594940a02499 blob + 9751697d3e37a1ecf9663709683c1d66cdd5f839 --- modules/mixins/dotfiles/bin/tempmenu +++ modules/mixins/dotfiles/bin/tempmenu @@ -13,15 +13,13 @@ if [ "$chosen" != "off" ] && ! [[ "$chosen" =~ ^[0-9]+ exit 1 fi -if [ -n "${WAYLAND_DISPLAY:-}" ]; then - pkill gammastep || true - if [ "$chosen" != "off" ]; then - gammastep -O "$chosen" & - fi +dbus_props() { + dbus-send --session --dest=rs.wl-gammarelay --type=method_call / org.freedesktop.DBus.Properties.Set "string:$1" "string:$2" "variant:$3:$4" +} + +if [ "$chosen" = "off" ]; then + dbus_props rs.wl.gammarelay Brightness double 1.0 + dbus_props rs.wl.gammarelay Temperature uint16 6500 else - if [ "$chosen" = "off" ]; then - redshift -x - else - redshift -O "$chosen" - fi + dbus_props rs.wl.gammarelay Temperature uint16 "$chosen" fi blob - 0b7e798ff5c27bcd2ec1c5ab0dbf5cff4d76df51 blob + 592b9e7e46aba70ec738289f6b699af62c6293d6 --- modules/mixins/dotfiles/config/newsraft/feeds +++ modules/mixins/dotfiles/config/newsraft/feeds @@ -41,6 +41,7 @@ https://sibexi.co/index.xml https://analognowhere.com/feed/rss.xml https://fabiensanglard.net/rss.xml https://venam.net/blog/feed.xml +https://refp.se/rss.xml @ substack < reload-period 120 blob - 26e323144cdac3990ab0e257c4451a878b908484 blob + 8a0a618295b49fc0cfb668700d2726009c4cf835 --- modules/mixins/dotfiles/home/tmux.conf +++ modules/mixins/dotfiles/home/tmux.conf @@ -11,7 +11,7 @@ set -ag terminal-overrides ",foot*:Tc" set -g status-interval 30 -set -g status off +set -g status on set -g status-left '' set -g status-right '' blob - /dev/null blob + 0425c6bb2db1c5d9c0040d7d31a110b2e10d64d5 (mode 644) --- /dev/null +++ modules/services/omnisearch.nix @@ -0,0 +1,101 @@ +{ + config, + lib, + pkgs, + inputs, + haravara, + ... +}: let + cfg = config.services.haravara.omnisearch; + + omnisearch = inputs.omnisearch.packages.${pkgs.stdenv.hostPlatform.system}.default; + + configFile = pkgs.writeText "omnisearch.ini" '' + [server] + host = ${cfg.host} + port = ${toString cfg.port} + locale = ${cfg.locale} + + [cache] + dir = /var/cache/omnisearch + + [engines] + engines = "${cfg.engines}" + ''; +in { + options.services.haravara.omnisearch = { + enable = lib.mkEnableOption "OmniSearch metasearch engine"; + + domain = lib.mkOption { + type = lib.types.str; + description = "Domain for the OmniSearch instance"; + }; + + host = lib.mkOption { + type = lib.types.str; + default = "127.0.0.1"; + description = "Address for OmniSearch to bind to"; + }; + + port = lib.mkOption { + type = lib.types.port; + default = 8087; + description = "Port for OmniSearch to listen on"; + }; + + locale = lib.mkOption { + type = lib.types.str; + default = "en_gb"; + description = "Default locale served to users"; + }; + + engines = lib.mkOption { + type = lib.types.str; + default = "*"; + description = "Enabled upstream engines: '*', a comma-separated list, or '*,-engine'"; + }; + + authLabel = haravara.authLabelOption; + }; + + config = lib.mkIf cfg.enable { + systemd.services.omnisearch = { + description = "OmniSearch metasearch engine"; + wantedBy = ["multi-user.target"]; + after = ["network.target"]; + + serviceConfig = { + ExecStart = "${omnisearch}/bin/omnisearch"; + WorkingDirectory = "/var/lib/omnisearch"; + StateDirectory = "omnisearch"; + CacheDirectory = "omnisearch"; + + BindReadOnlyPaths = [ + "${omnisearch}/share/omnisearch/templates:/var/lib/omnisearch/templates" + "${omnisearch}/share/omnisearch/static:/var/lib/omnisearch/static" + "${omnisearch}/share/omnisearch/locales:/var/lib/omnisearch/locales" + "${configFile}:/var/lib/omnisearch/config.ini" + ]; + + DynamicUser = true; + ProtectSystem = "strict"; + ProtectHome = true; + PrivateTmp = true; + Restart = "always"; + }; + }; + + services.caddy.virtualHosts."${cfg.domain}".extraConfig = '' + ${haravara.mkAuthImport cfg.authLabel} + header { + Strict-Transport-Security "max-age=31536000; includeSubDomains" + X-Content-Type-Options "nosniff" + X-Frame-Options "DENY" + Referrer-Policy "strict-origin-when-cross-origin" + -Server + } + + reverse_proxy ${cfg.host}:${toString cfg.port} + ''; + }; +}