From 3c9e97d7b5fa5ba1773fe5addb640c902169a601 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 16:24:02 +0100 Subject: [PATCH 001/199] Renamed enable auto suggestion --- home-manager/package-configs/zsh.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-manager/package-configs/zsh.nix b/home-manager/package-configs/zsh.nix index f29743f..f7346cd 100644 --- a/home-manager/package-configs/zsh.nix +++ b/home-manager/package-configs/zsh.nix @@ -34,7 +34,7 @@ }; } ]; - enableAutosuggestions = true; + autosuggestion.enable = true; enableCompletion = true; historySubstringSearch.enable = true; syntaxHighlighting.enable = true; From b5c7817bbc08605f72ce084dcf03fa94489b7412 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 16:26:19 +0100 Subject: [PATCH 002/199] update flake lock --- flake.lock | 136 ++++++++++++++++++++++++----------------------------- 1 file changed, 61 insertions(+), 75 deletions(-) diff --git a/flake.lock b/flake.lock index 97f202f..8a77ad9 100644 --- a/flake.lock +++ b/flake.lock @@ -52,11 +52,11 @@ ] }, "locked": { - "lastModified": 1710090208, - "narHash": "sha256-1W7yDW+kqCr/9SygZwygBayE8HwLnzJq48fMAOZQLAY=", + "lastModified": 1710602287, + "narHash": "sha256-6hjHSfH3jfTDxD6hELL7RGoqv2pnyVAtS81H5Le6qkk=", "owner": "girlbossceo", "repo": "conduwuit", - "rev": "e888a0a745ac979abe6a687ff24b8c5e7b7b79ed", + "rev": "930bf3891c5a1279b23e16f3f10ce02c47b9b4cb", "type": "github" }, "original": { @@ -137,11 +137,11 @@ ] }, "locked": { - "lastModified": 1710379155, - "narHash": "sha256-zdHEsOOnfBTO1ymL6gd9etR+iNS6HowbJM4Llqxy+Uc=", + "lastModified": 1710427903, + "narHash": "sha256-sV0Q5ndvfjK9JfCg/QM/HX/fcittohvtq8dD62isxdM=", "owner": "nix-community", "repo": "disko", - "rev": "cc69c2340b59e290982ec7e6238471d470c839d0", + "rev": "21d89b333ca300bef82c928c856d48b94a9f997c", "type": "github" }, "original": { @@ -258,11 +258,11 @@ "flake-compat_4": { "flake": false, "locked": { - "lastModified": 1668681692, - "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "owner": "edolstra", "repo": "flake-compat", - "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "type": "github" }, "original": { @@ -390,11 +390,11 @@ ] }, "locked": { - "lastModified": 1710401383, - "narHash": "sha256-jskq7uDpKXrRoY4hDpNqykmSSKHUXYlo7ZFc/se7fus=", + "lastModified": 1710532761, + "narHash": "sha256-SUXGZNrXX05YA9G6EmgupxhOr3swI1gcxLUeDMUhrEY=", "owner": "nix-community", "repo": "home-manager", - "rev": "1ab3cec3a1bbb065b2d52b913d1431366028d5b5", + "rev": "206f457fffdb9a73596a4cb2211a471bd305243d", "type": "github" }, "original": { @@ -542,11 +542,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1710123225, - "narHash": "sha256-j3oWlxRZxB7cFsgEntpH3rosjFHRkAo/dhX9H3OfxtY=", + "lastModified": 1710622004, + "narHash": "sha256-6zR642tXcZzzk3C8BHxlCrR0yh8z8zMXLiuXpWDIpX0=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "ad2fd7b978d5e462048729a6c635c45d3d33c9ba", + "rev": "968952f950a59dee9ed1e8799dda38c6dfa1bad3", "type": "github" }, "original": { @@ -572,36 +572,6 @@ "type": "github" } }, - "nixpkgs-23_05": { - "locked": { - "lastModified": 1704290814, - "narHash": "sha256-LWvKHp7kGxk/GEtlrGYV68qIvPHkU9iToomNFGagixU=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "70bdadeb94ffc8806c0570eb5c2695ad29f0e421", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "ref": "nixos-23.05", - "type": "indirect" - } - }, - "nixpkgs-23_11": { - "locked": { - "lastModified": 1706098335, - "narHash": "sha256-r3dWjT8P9/Ah5m5ul4WqIWD8muj5F+/gbCdjiNVBKmU=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a77ab169a83a4175169d78684ddd2e54486ac651", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "ref": "nixos-23.11", - "type": "indirect" - } - }, "nixpkgs-stable": { "locked": { "lastModified": 1702780907, @@ -636,11 +606,11 @@ }, "nixpkgs-stable_3": { "locked": { - "lastModified": 1710033658, - "narHash": "sha256-yiZiVKP5Ya813iYLho2+CcFuuHpaqKc/CoxOlANKcqM=", + "lastModified": 1710628718, + "narHash": "sha256-y+l3eH53UlENaYa1lmnCBHusZb1kxBEFd2/c7lDsGpw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b17375d3bb7c79ffc52f3538028b2ec06eb79ef8", + "rev": "6dc11d9859d6a18ab0c5e5829a5b8e4810658de3", "type": "github" }, "original": { @@ -652,11 +622,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1710272261, - "narHash": "sha256-g0bDwXFmTE7uGDOs9HcJsfLFhH7fOsASbAuOzDC+fhQ=", + "lastModified": 1710631334, + "narHash": "sha256-rL5LSYd85kplL5othxK5lmAtjyMOBg390sGBTb3LRMM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0ad13a6833440b8e238947e47bea7f11071dc2b2", + "rev": "c75037bbf9093a2acb617804ee46320d6d1fea5a", "type": "github" }, "original": { @@ -668,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1710377395, - "narHash": "sha256-KMubsUWtVr7L55pXMBibBDBdmk3xrjbBPduc0E8z28c=", + "lastModified": 1710637405, + "narHash": "sha256-w/woLwnFyhOeJWPjSWFtMNI2/RZTaAtHySIfm43Chos=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "db001797591bf76f7b8d4c4ed3b49233391e0c97", + "rev": "299d4668ba61600311553920d9fd9c102145b2cb", "type": "github" }, "original": { @@ -716,11 +686,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1710272261, - "narHash": "sha256-g0bDwXFmTE7uGDOs9HcJsfLFhH7fOsASbAuOzDC+fhQ=", + "lastModified": 1710631334, + "narHash": "sha256-rL5LSYd85kplL5othxK5lmAtjyMOBg390sGBTb3LRMM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0ad13a6833440b8e238947e47bea7f11071dc2b2", + "rev": "c75037bbf9093a2acb617804ee46320d6d1fea5a", "type": "github" }, "original": { @@ -732,11 +702,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1705856552, - "narHash": "sha256-JXfnuEf5Yd6bhMs/uvM67/joxYKoysyE3M2k6T3eWbg=", + "lastModified": 1709703039, + "narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "612f97239e2cc474c13c9dafa0df378058c5ad8d", + "rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d", "type": "github" }, "original": { @@ -747,11 +717,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1709968316, - "narHash": "sha256-4rZEtEDT6jcgRaqxsatBeds7x1PoEiEjb6QNGb4mNrk=", + "lastModified": 1710534455, + "narHash": "sha256-huQT4Xs0y4EeFKn2BTBVYgEwJSv8SDlm82uWgMnCMmI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0e7f98a5f30166cbed344569426850b21e4091d4", + "rev": "9af9c1c87ed3e3ed271934cb896e0cdd33dae212", "type": "github" }, "original": { @@ -908,16 +878,14 @@ "blobs": "blobs", "flake-compat": "flake-compat_4", "nixpkgs": "nixpkgs_6", - "nixpkgs-23_05": "nixpkgs-23_05", - "nixpkgs-23_11": "nixpkgs-23_11", "utils": "utils" }, "locked": { - "lastModified": 1709905972, - "narHash": "sha256-18OF2/ypr0n4Lp6Fk5SLHPu12ok6jM+Hv3sC0PCim0Q=", + "lastModified": 1710449465, + "narHash": "sha256-2orO8nfplp6uQJBFqKkj1iyNMC6TysmwbWwbb4osTag=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "572c1b4d69deea1093ac231c37927cfa8ccad477", + "rev": "79c8cfcd5873a85559da6201b116fb38b490d030", "type": "gitlab" }, "original": { @@ -933,11 +901,11 @@ "nixpkgs-stable": "nixpkgs-stable_3" }, "locked": { - "lastModified": 1710417151, - "narHash": "sha256-3aDzAo0+jURqop+XL8EwVMmS3zkslGiPT2JXWOe9W+4=", + "lastModified": 1710644594, + "narHash": "sha256-RquCuzxfy4Nr8DPbdp3D/AsbYep21JgQzG8aMH9jJ4A=", "owner": "Mic92", "repo": "sops-nix", - "rev": "804157eb75a4312df25a9a144d3807c40ade72b6", + "rev": "83b68a0e8c94b72cdd0a6e547a14ca7eb1c03616", "type": "github" }, "original": { @@ -991,13 +959,31 @@ "type": "github" } }, - "utils": { + "systems_4": { "locked": { - "lastModified": 1605370193, - "narHash": "sha256-YyMTf3URDL/otKdKgtoMChu4vfVL3vCMkRqpGifhUn0=", + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "utils": { + "inputs": { + "systems": "systems_4" + }, + "locked": { + "lastModified": 1709126324, + "narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=", "owner": "numtide", "repo": "flake-utils", - "rev": "5021eac20303a61fafe17224c087f5519baed54d", + "rev": "d465f4819400de7c8d874d50b982301f28a84605", "type": "github" }, "original": { From 10f23d3ef67b6ec3cf93949866aa17deb8ab9920 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 20:21:25 +0100 Subject: [PATCH 003/199] Let's try the non branch version? --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index ca7f796..f352745 100644 --- a/flake.nix +++ b/flake.nix @@ -19,7 +19,7 @@ # Conduit fork without all the fuss and drama conduit = { - url = "github:girlbossceo/conduwuit"; + url = "gitlab:famedly/conduit"; inputs.nixpkgs.follows = "nixpkgs"; }; From ec3909f36fff01f55ea71bd26f4ff0d84054538d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 20:24:19 +0100 Subject: [PATCH 004/199] update flake lock --- flake.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index 8a77ad9..66dd9f8 100644 --- a/flake.lock +++ b/flake.lock @@ -52,17 +52,17 @@ ] }, "locked": { - "lastModified": 1710602287, - "narHash": "sha256-6hjHSfH3jfTDxD6hELL7RGoqv2pnyVAtS81H5Le6qkk=", - "owner": "girlbossceo", - "repo": "conduwuit", - "rev": "930bf3891c5a1279b23e16f3f10ce02c47b9b4cb", - "type": "github" + "lastModified": 1710648418, + "narHash": "sha256-DW8l1iofy9lYeZaHLX89Wvvry2mzp2R2Yk4cM5pjB8g=", + "owner": "famedly", + "repo": "conduit", + "rev": "a8da61e5b7152da0925f9f9f25056144d24fe4a6", + "type": "gitlab" }, "original": { - "owner": "girlbossceo", - "repo": "conduwuit", - "type": "github" + "owner": "famedly", + "repo": "conduit", + "type": "gitlab" } }, "crane": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1710637405, - "narHash": "sha256-w/woLwnFyhOeJWPjSWFtMNI2/RZTaAtHySIfm43Chos=", + "lastModified": 1710669607, + "narHash": "sha256-kNj0Ka1/rkQRcigYTa1c5B6IcFuxDgM3s9jYuKUhxyM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "299d4668ba61600311553920d9fd9c102145b2cb", + "rev": "6af7e814afb3b62171eee1edc31989ee61528d25", "type": "github" }, "original": { From 4c46a95a0030997ff57240bbac4899ad40be61da Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 20:47:07 +0100 Subject: [PATCH 005/199] Enable registration temporarily --- nixos/server/package-configs/conduit/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 0b17214..8932e7e 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -40,7 +40,8 @@ in { settings.global = { inherit server_name; - database_backend = "sqlite"; + database_backend = "rocksdb"; + allow_registration = true; }; }; From a219487fd93c1e75c1d2242189347a7933cbbcfd Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 20:49:06 +0100 Subject: [PATCH 006/199] Just do sqlite --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 8932e7e..c0189dd 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -40,7 +40,7 @@ in { settings.global = { inherit server_name; - database_backend = "rocksdb"; + database_backend = "sqlite"; allow_registration = true; }; }; From f46f2de03fe1820b8b7ca9dcd6d4424e7b260a70 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 20:53:11 +0100 Subject: [PATCH 007/199] Disable registration now --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index c0189dd..74dc5a8 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -41,7 +41,7 @@ in { settings.global = { inherit server_name; database_backend = "sqlite"; - allow_registration = true; + allow_registration = false; }; }; From 47f0392a99ce6fddd4aa78f9c310abbce7b8fcb2 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 22:41:42 +0100 Subject: [PATCH 008/199] Workaround for a totally quiet boot, hope this works --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 64680c3..279e89c 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -195,7 +195,7 @@ boot.loader.timeout = 0; boot.loader.efi.canTouchEfiVariables = true; boot.consoleLogLevel = 0; - boot.kernelParams = ["quiet" "udev.log_priority=0"]; + boot.kernelParams = ["quiet" "udev.log_priority=0" "fbcon=vc:2-6" "console=tty0"]; boot.plymouth.enable = true; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion From e5b15294011038755d169f2e5b216b2d8ea40175 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 23:10:17 +0100 Subject: [PATCH 009/199] Try to automount the SD on boot --- nixos/hosts/shodan/hardware-configuration.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/nixos/hosts/shodan/hardware-configuration.nix b/nixos/hosts/shodan/hardware-configuration.nix index dbd00de..ddbf19f 100644 --- a/nixos/hosts/shodan/hardware-configuration.nix +++ b/nixos/hosts/shodan/hardware-configuration.nix @@ -27,6 +27,11 @@ fsType = "vfat"; }; + fileSystems."/home/lillian/sd" = { + device = "/dev/mmcblk0p1"; + fsType = "exfat"; + }; + swapDevices = [ {device = "/dev/disk/by-uuid/c0c87d80-b6be-444a-a76f-b32d35c38994";} ]; From de078d7815f354679a58482e6855b097efcc42fa Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 17 Mar 2024 23:11:49 +0100 Subject: [PATCH 010/199] Let's make that path a bit more standard --- nixos/hosts/shodan/hardware-configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/hardware-configuration.nix b/nixos/hosts/shodan/hardware-configuration.nix index ddbf19f..ac88e90 100644 --- a/nixos/hosts/shodan/hardware-configuration.nix +++ b/nixos/hosts/shodan/hardware-configuration.nix @@ -27,7 +27,7 @@ fsType = "vfat"; }; - fileSystems."/home/lillian/sd" = { + fileSystems."/run/media/lillian/SD" = { device = "/dev/mmcblk0p1"; fsType = "exfat"; }; From 5a955870f809a7d24777f6e567d3334c3d383bab Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 00:58:19 +0100 Subject: [PATCH 011/199] Enable automount on shodan for removable media --- nixos/hosts/shodan/configuration.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 279e89c..4fcc3c4 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -144,6 +144,10 @@ networking.firewall.allowedTCPPorts = [22]; + # Enable automounting of removable media + services.udisks2.enable = true; + services.devmon.enable = true; + # Set your time zone. time.timeZone = "Europe/Amsterdam"; From 80fbd2c88493852d517c661ed559ba6ceb2c58d1 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 00:59:26 +0100 Subject: [PATCH 012/199] Add lillian to storage group on shodan to access the auto mounts --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 4fcc3c4..b33d6f5 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -179,7 +179,7 @@ enable = true; }; - users.users.lillian.extraGroups = ["decky"]; + users.users.lillian.extraGroups = ["decky" "storage"]; # Enable completion of system packages by zsh environment.pathsToLink = ["/share/zsh"]; From 684ac9b60588a42743249e31a5a25027ae04463b Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 01:04:40 +0100 Subject: [PATCH 013/199] Enable bashmount in shodan home manager, maybe that will automount? --- home-manager/hosts/shodan/lillian.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/home-manager/hosts/shodan/lillian.nix b/home-manager/hosts/shodan/lillian.nix index 1f1393d..28f0bc6 100644 --- a/home-manager/hosts/shodan/lillian.nix +++ b/home-manager/hosts/shodan/lillian.nix @@ -78,6 +78,8 @@ ungoogled-chromium ]; + programs.bashmount.enable = true; + # Enable home-manager and git programs.home-manager.enable = true; programs.git = { From 11f30ba64c38a600f995cb3c5ec797a6562e97d7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 01:21:34 +0100 Subject: [PATCH 014/199] Let's try udiskie? --- nixos/hosts/shodan/configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index b33d6f5..afdb6e7 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -147,6 +147,7 @@ # Enable automounting of removable media services.udisks2.enable = true; services.devmon.enable = true; + services.udiskie.enable = true; # Set your time zone. time.timeZone = "Europe/Amsterdam"; From 5e72f48b27f085fef7520b5866698776304ab0e2 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 01:24:20 +0100 Subject: [PATCH 015/199] Wrong location for that --- home-manager/hosts/shodan/lillian.nix | 2 ++ nixos/hosts/shodan/configuration.nix | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/home-manager/hosts/shodan/lillian.nix b/home-manager/hosts/shodan/lillian.nix index 28f0bc6..6c23e7d 100644 --- a/home-manager/hosts/shodan/lillian.nix +++ b/home-manager/hosts/shodan/lillian.nix @@ -78,7 +78,9 @@ ungoogled-chromium ]; + # Automount services for user programs.bashmount.enable = true; + services.udiskie.enable = true; # Enable home-manager and git programs.home-manager.enable = true; diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index afdb6e7..b33d6f5 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -147,7 +147,6 @@ # Enable automounting of removable media services.udisks2.enable = true; services.devmon.enable = true; - services.udiskie.enable = true; # Set your time zone. time.timeZone = "Europe/Amsterdam"; From 43221002507c7eaea5c37cde3db869ca7a179670 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 01:48:48 +0100 Subject: [PATCH 016/199] Let's try udiskie like this --- home-manager/hosts/shodan/lillian.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/home-manager/hosts/shodan/lillian.nix b/home-manager/hosts/shodan/lillian.nix index 6c23e7d..cfd8cce 100644 --- a/home-manager/hosts/shodan/lillian.nix +++ b/home-manager/hosts/shodan/lillian.nix @@ -80,7 +80,12 @@ # Automount services for user programs.bashmount.enable = true; - services.udiskie.enable = true; + services.udiskie = { + enable = true; + automount = true; + notify = false; + tray = "never"; + }; # Enable home-manager and git programs.home-manager.enable = true; From 3f2676c867d8dcf7d288e857b8dcfe102c4373be Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 01:56:24 +0100 Subject: [PATCH 017/199] Last attempt for today --- nixos/hosts/shodan/configuration.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index b33d6f5..2fb4ac2 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -147,6 +147,8 @@ # Enable automounting of removable media services.udisks2.enable = true; services.devmon.enable = true; + services.gvfs.enable = true; + environment.variables.GIO_EXTRA_MODULES = ["${pkgs.gvfs}/lib/gio/modules"]; # Set your time zone. time.timeZone = "Europe/Amsterdam"; From 6f65c57314b5405d874dc1ce3b4319e5b562b094 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 01:57:59 +0100 Subject: [PATCH 018/199] Force this? --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 2fb4ac2..55ea51e 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -148,7 +148,7 @@ services.udisks2.enable = true; services.devmon.enable = true; services.gvfs.enable = true; - environment.variables.GIO_EXTRA_MODULES = ["${pkgs.gvfs}/lib/gio/modules"]; + environment.variables.GIO_EXTRA_MODULES = lib.mkForce ["${pkgs.gvfs}/lib/gio/modules"]; # Set your time zone. time.timeZone = "Europe/Amsterdam"; From fc3384472d7b994971dabd1e42162844e0749d99 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 14:44:16 +0100 Subject: [PATCH 019/199] Created new derivation based on this: https://github.com/scawp/Steam-Deck.Mount-External-Drive/ --- home-manager/hosts/shodan/lillian.nix | 16 +- nixos/hosts/shodan/auto-mount.nix | 30 ++++ pkgs/auto-mount/default.nix | 233 ++++++++++++++++++++++++++ pkgs/default.nix | 1 + 4 files changed, 272 insertions(+), 8 deletions(-) create mode 100644 nixos/hosts/shodan/auto-mount.nix create mode 100644 pkgs/auto-mount/default.nix diff --git a/home-manager/hosts/shodan/lillian.nix b/home-manager/hosts/shodan/lillian.nix index cfd8cce..dfac6d2 100644 --- a/home-manager/hosts/shodan/lillian.nix +++ b/home-manager/hosts/shodan/lillian.nix @@ -78,14 +78,14 @@ ungoogled-chromium ]; - # Automount services for user - programs.bashmount.enable = true; - services.udiskie = { - enable = true; - automount = true; - notify = false; - tray = "never"; - }; + # # Automount services for user + # programs.bashmount.enable = true; + # services.udiskie = { + # enable = true; + # automount = true; + # notify = false; + # tray = "never"; + # }; # Enable home-manager and git programs.home-manager.enable = true; diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix new file mode 100644 index 0000000..ac346cf --- /dev/null +++ b/nixos/hosts/shodan/auto-mount.nix @@ -0,0 +1,30 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: { + services.udev.extraRules = '' + KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="add", RUN+="/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="/bin/systemctl stop --no-block external-drive-mount@%k.service" + ''; + systemd.services.auto-mount = { + enable = true; + description = "Mount External Drive on %i"; + unitConfig = { + }; + serviceConfig = { + Type = "oneshot"; + ExecStart = "/run/current-system/sw/bin/automount add %i"; + ExecStop = "/run/current-system/sw/bin/automount remove %i"; + RemainAfterExit = true; + }; + wantedBy = ["multi-user.target"]; + }; +} diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix new file mode 100644 index 0000000..e80df01 --- /dev/null +++ b/pkgs/auto-mount/default.nix @@ -0,0 +1,233 @@ +{ + lib, + stdenv, + direnv, + writeShellApplication, +}: +writeShellApplication +{ + name = "auto-mount"; + + runtimeInputs = []; + + text = '' + #!/bin/bash + + set -euo pipefail + + # Originally from https://serverfault.com/a/767079 + + # This script is called from our systemd unit file to mount or unmount + # a USB drive. + + usage() + { + echo "Usage: $0 {add|remove} device_name (e.g. sdb1)" + exit 1 + } + + if [[ $# -ne 2 ]]; then + usage + fi + + ACTION=$1 + DEVBASE=$2 + DEVICE="/dev/''${DEVBASE}" + + # Shared between this and the auto-mount script to ensure we're not double-triggering nor automounting while formatting + # or vice-versa. + MOUNT_LOCK="/var/run/jupiter-automount-''${DEVBASE//\/_}.lock" + + # Obtain lock + exec 9<>"$MOUNT_LOCK" + if ! flock -n 9; then + echo "$MOUNT_LOCK is active: ignoring action $ACTION" + # Do not return a success exit code: it could end up putting the service in 'started' state without doing the mount + # work (further start commands will be ignored after that) + exit 1 + fi + + # Wait N seconds for steam + wait_steam() + { + local i=0 + local wait=$1 + echo "Waiting up to $wait seconds for steam to load" + while ! pgrep -x steamwebhelper &>/dev/null && (( i++ < wait )); do + sleep 1 + done + } + + send_steam_url() + { + local command="$1" + local arg="$2" + local encoded=$(urlencode "$arg") + if pgrep -x "steam" > /dev/null; then + # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent + # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess + systemd-run -M 1000@ --user --collect --wait sh -c "./.steam/root/ubuntu12_32/steam steam://''${command}/''${encoded@Q}" + echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" + else + echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" + fi + } + + # From https://gist.github.com/HazCod/da9ec610c3d50ebff7dd5e7cac76de05 + urlencode() + { + [ -z "$1" ] || echo -n "$@" | hexdump -v -e '/1 "%02x"' | sed 's/\(..\)/%\1/g' + } + + do_mount() + { + declare -i ret + # NOTE: these values are ABI, since they are sent to the Steam client + readonly FSCK_ERROR=1 + readonly MOUNT_ERROR=2 + + # Get info for this drive: $ID_FS_LABEL, and $ID_FS_TYPE + dev_json=$(lsblk -o PATH,LABEL,FSTYPE --json -- "$DEVICE" | jq '.blockdevices[0]') + ID_FS_LABEL=$(jq -r '.label | select(type == "string")' <<< "$dev_json") + ID_FS_TYPE=$(jq -r '.fstype | select(type == "string")' <<< "$dev_json") + + # Global mount options + OPTS="rw,noatime" + + # File system type specific mount options + #if [[ ''${ID_FS_TYPE} == "vfat" ]]; then + # OPTS+=",users,gid=100,umask=000,shortname=mixed,utf8=1,flush" + #fi + + case "''${ID_FS_TYPE}" in + "ntfs") + echo "FSType is NTFS" + #Extra Opts don't seem necessary anymore? add if required + #OPTS+="" + ;; + "exfat") + echo "FSType is exFat" + #OPTS+=",users,gid=100,umask=000,shortname=mixed,utf8=1,flush" + ;; + "btrfs") + echo "FSType is btrfs" + ;; + "ext4") + echo "FSType is ext4" + #exit 2 + ;; + *) + echo "Error mounting ''${DEVICE}: unsupported fstype: ''${ID_FS_TYPE} - ''${dev_json}" + rm "''${MOUNT_LOCK}" + exit 2 + ;; + esac + + # Prior to talking to udisks, we need all udev hooks (we were started by one) to finish, so we know it has knowledge + # of the drive. Our own rule starts us as a service with --no-block, so we can wait for rules to settle here + # safely. + #if ! udevadm settle; then + # echo "Failed to wait for \`udevadm settle\`" + # exit 1 + #fi + + # Ask udisks to auto-mount. This needs a version of udisks that supports the 'as-user' option. + ret=0 + reply=$(busctl call --allow-interactive-authorization=false --expect-reply=true --json=short \ + org.freedesktop.UDisks2 \ + /org/freedesktop/UDisks2/block_devices/"''${DEVBASE}" \ + org.freedesktop.UDisks2.Filesystem \ + Mount 'a{sv}' 3 \ + as-user s lillian \ + auth.no_user_interaction b true \ + options s "$OPTS") || ret=$? + + if (( ret != 0 )); then + send_steam_url "system/devicemountresult" "''${DEVBASE}/''${MOUNT_ERROR}" + echo "Error mounting ''${DEVICE} (status = $ret)" + exit 1 + fi + + # Expected reply is of the format + # {"type":"s","data":["/run/media/lillian/home"]} + mount_point=$(jq -r '.data[0] | select(type == "string")' <<< "$reply" || true) + if [[ -z $mount_point ]]; then + echo "Error when mounting ''${DEVICE}: udisks returned success but could not parse reply:" + echo "---"$'\n'"$reply"$'\n'"---" + exit 1 + fi + + if [[ ''${ID_FS_TYPE} == "exfat" ]]; then + echo "exFat does not support symlinks, do not add library to Steam" + exit 0 + fi + + # Create a symlink from /run/media to keep compatibility with apps + # that use the older mount point (for SD cards only). + case "''${DEVBASE}" in + mmcblk0p*) + if [[ -z "''${ID_FS_LABEL}" ]]; then + old_mount_point="/run/media/''${DEVBASE}" + else + old_mount_point="/run/media/''${mount_point##*/}" + fi + if [[ ! -d "''${old_mount_point}" ]]; then + rm -f -- "''${old_mount_point}" + ln -s -- "''${mount_point}" "''${old_mount_point}" + fi + ;; + esac + + echo "**** Mounted ''${DEVICE} at ''${mount_point} ****" + + if [ -f "''${mount_point}/libraryfolder.vdf" ]; then + send_steam_url "addlibraryfolder" "''${mount_point}" + else + #TODO check permissions are 1000 when creating new SteamLibrary + mkdir -p "''${mount_point}/SteamLibrary" + chown lillian:lillian "''${mount_point}/SteamLibrary" + send_steam_url "addlibraryfolder" "''${mount_point}/SteamLibrary" + fi + } + + do_unmount() + { + local mount_point=$(findmnt -fno TARGET "''${DEVICE}" || true) + if [[ -n $mount_point ]]; then + # Remove symlink to the mount point that we're unmounting + find /run/media -maxdepth 1 -xdev -type l -lname "''${mount_point}" -exec rm -- {} \; + else + # If we don't know the mount point then remove all broken symlinks + find /run/media -maxdepth 1 -xdev -xtype l -exec rm -- {} \; + fi + } + + do_retrigger() + { + local mount_point=$(findmnt -fno TARGET "''${DEVICE}" || true) + [[ -n $mount_point ]] || return 0 + + # In retrigger mode, we want to wait a bit for steam as the common pattern is starting in parallel with a retrigger + wait_steam 10 + # This is a truly gnarly way to ensure steam is ready for commands. + # TODO literally anything else + sleep 6 + send_steam_url "addlibraryfolder" "''${mount_point}" + } + + case "''${ACTION}" in + add) + do_mount + ;; + remove) + do_unmount + ;; + retrigger) + do_retrigger + ;; + *) + usage + ;; + esac + ''; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 17b7a02..f322ced 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -11,4 +11,5 @@ pkgs: { update = pkgs.callPackage ./update {}; upgrade = pkgs.callPackage ./upgrade {}; restart = pkgs.callPackage ./restart {}; + auto-mount = pkgs.callPackage ./auto-mount {}; } From b7eb0d5179a1b822369cbaa1c2f6b96bad46dae7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 14:46:37 +0100 Subject: [PATCH 020/199] Small tweaks, disable my earlier tinkering to not have it interfere --- nixos/hosts/shodan/auto-mount.nix | 2 ++ nixos/hosts/shodan/configuration.nix | 2 ++ pkgs/auto-mount/default.nix | 2 ++ 3 files changed, 6 insertions(+) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index ac346cf..a52c160 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -6,6 +6,8 @@ pkgs, ... }: { + environment.systemPackages = with pkgs; [auto-mount]; + services.udev.extraRules = '' KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="/bin/systemctl stop --no-block external-drive-mount@%k.service" diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 55ea51e..f750210 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -21,6 +21,8 @@ # You can also split up your configuration and import pieces of it here: # ./nvim.nix ./hardware-configuration.nix + + ./auto-mount.nix ]; boot.tmp.cleanOnBoot = true; diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index e80df01..176ee24 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -6,6 +6,8 @@ }: writeShellApplication { + # Originally from: https://github.com/scawp/Steam-Deck.Mount-External-Drive/ + name = "auto-mount"; runtimeInputs = []; From 4e3f91a12283fbc56a7afaf40f80c800dd430cdd Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 14:49:13 +0100 Subject: [PATCH 021/199] Replace the generic linux stuff with nix specific things --- nixos/hosts/shodan/auto-mount.nix | 12 ++++++------ pkgs/auto-mount/default.nix | 2 -- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index a52c160..f63a6c2 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -9,12 +9,12 @@ environment.systemPackages = with pkgs; [auto-mount]; services.udev.extraRules = '' - KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="/bin/systemctl start --no-block external-drive-mount@%k.service" - KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="/bin/systemctl stop --no-block external-drive-mount@%k.service" - KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="add", RUN+="/bin/systemctl start --no-block external-drive-mount@%k.service" - KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="/bin/systemctl stop --no-block external-drive-mount@%k.service" - KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="/bin/systemctl start --no-block external-drive-mount@%k.service" - KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="/run/current-system/sw/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="/run/current-system/sw/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="add", RUN+="/run/current-system/sw/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="/run/current-system/sw/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="/run/current-system/sw/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="/run/current-system/sw/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services.auto-mount = { enable = true; diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 176ee24..8f1af57 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -13,8 +13,6 @@ writeShellApplication runtimeInputs = []; text = '' - #!/bin/bash - set -euo pipefail # Originally from https://serverfault.com/a/767079 From 55488c83384a81b23bb77565a400312a45c3b8b1 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 15:00:03 +0100 Subject: [PATCH 022/199] Declare some vars separately so shellckeck will pass --- pkgs/auto-mount/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 8f1af57..86fa285 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -192,7 +192,8 @@ writeShellApplication do_unmount() { - local mount_point=$(findmnt -fno TARGET "''${DEVICE}" || true) + local mount_point + mount_point=$(findmnt -fno TARGET "''${DEVICE}" || true) if [[ -n $mount_point ]]; then # Remove symlink to the mount point that we're unmounting find /run/media -maxdepth 1 -xdev -type l -lname "''${mount_point}" -exec rm -- {} \; @@ -204,7 +205,8 @@ writeShellApplication do_retrigger() { - local mount_point=$(findmnt -fno TARGET "''${DEVICE}" || true) + local mount_point + mount_point=$(findmnt -fno TARGET "''${DEVICE}" || true) [[ -n $mount_point ]] || return 0 # In retrigger mode, we want to wait a bit for steam as the common pattern is starting in parallel with a retrigger From 6015d165181926e32672bc2f12fca56471e6c88e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 15:04:26 +0100 Subject: [PATCH 023/199] Fixed these issues too, surpressed the unused argument since those are passed externally --- pkgs/auto-mount/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 86fa285..afc488c 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -60,9 +60,12 @@ writeShellApplication send_steam_url() { - local command="$1" - local arg="$2" - local encoded=$(urlencode "$arg") + local command + command="$1" + local arg + arg="$2" + local encoded + encoded=$(urlencode "$arg") if pgrep -x "steam" > /dev/null; then # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess @@ -83,7 +86,9 @@ writeShellApplication { declare -i ret # NOTE: these values are ABI, since they are sent to the Steam client + # shellcheck disable=SC2034 readonly FSCK_ERROR=1 + # shellcheck disable=SC2034 readonly MOUNT_ERROR=2 # Get info for this drive: $ID_FS_LABEL, and $ID_FS_TYPE From f24a6cb9a001e72e751b1188efdb3b3ae3981ae2 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 15:09:12 +0100 Subject: [PATCH 024/199] Fix systemctl path --- nixos/hosts/shodan/auto-mount.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index f63a6c2..15ad8a3 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -9,12 +9,12 @@ environment.systemPackages = with pkgs; [auto-mount]; services.udev.extraRules = '' - KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="/run/current-system/sw/bin/systemctl start --no-block external-drive-mount@%k.service" - KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="/run/current-system/sw/bin/systemctl stop --no-block external-drive-mount@%k.service" - KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="add", RUN+="/run/current-system/sw/bin/systemctl start --no-block external-drive-mount@%k.service" - KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="/run/current-system/sw/bin/systemctl stop --no-block external-drive-mount@%k.service" - KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="/run/current-system/sw/bin/systemctl start --no-block external-drive-mount@%k.service" - KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="/run/current-system/sw/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" + KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services.auto-mount = { enable = true; From 5b7093dde0203bdd9526f9eadf4d078f218651ec Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 15:19:43 +0100 Subject: [PATCH 025/199] Rename service and see if it works now --- nixos/hosts/shodan/auto-mount.nix | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 15ad8a3..3901309 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -16,17 +16,14 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; - systemd.services.auto-mount = { + systemd.services."external-drive-mount@" = { enable = true; description = "Mount External Drive on %i"; - unitConfig = { - }; serviceConfig = { Type = "oneshot"; + RemainAfterExit = true; ExecStart = "/run/current-system/sw/bin/automount add %i"; ExecStop = "/run/current-system/sw/bin/automount remove %i"; - RemainAfterExit = true; }; - wantedBy = ["multi-user.target"]; }; } From ff4083d1ab780146cf3c5a7ea12bdf374e89512d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 15:24:54 +0100 Subject: [PATCH 026/199] Disable all the other experiments from before --- nixos/hosts/shodan/configuration.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index f750210..6db593d 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -146,11 +146,11 @@ networking.firewall.allowedTCPPorts = [22]; - # Enable automounting of removable media - services.udisks2.enable = true; - services.devmon.enable = true; - services.gvfs.enable = true; - environment.variables.GIO_EXTRA_MODULES = lib.mkForce ["${pkgs.gvfs}/lib/gio/modules"]; + # # Enable automounting of removable media + # services.udisks2.enable = true; + # services.devmon.enable = true; + # services.gvfs.enable = true; + # environment.variables.GIO_EXTRA_MODULES = lib.mkForce ["${pkgs.gvfs}/lib/gio/modules"]; # Set your time zone. time.timeZone = "Europe/Amsterdam"; @@ -183,7 +183,7 @@ enable = true; }; - users.users.lillian.extraGroups = ["decky" "storage"]; + users.users.lillian.extraGroups = ["decky"]; # Enable completion of system packages by zsh environment.pathsToLink = ["/share/zsh"]; From 8dc0ceb16bdbe873257303f23c62031c614832f1 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 16:06:23 +0100 Subject: [PATCH 027/199] Run SDDM on wayland --- nixos/desktop/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix index 909a171..be09f1d 100644 --- a/nixos/desktop/default.nix +++ b/nixos/desktop/default.nix @@ -89,7 +89,7 @@ services.xserver.enable = true; # Enable the KDE Plasma Desktop Environment. - services.xserver.displayManager.sddm.enable = true; + services.xserver.displayManager.sddm.wayland.enable = true; services.desktopManager.plasma6.enable = true; services.xserver.displayManager.defaultSession = "plasma"; programs.kdeconnect.enable = true; From 30a243fae0f4f8f64fb91fc6589ab7dda020b82f Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 16:17:48 +0100 Subject: [PATCH 028/199] Added some kde libraries --- nixos/desktop/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix index be09f1d..dbe40da 100644 --- a/nixos/desktop/default.nix +++ b/nixos/desktop/default.nix @@ -58,6 +58,9 @@ # kdePackages.krunner-ssh # kdePackages.krunner-symbols kdePackages.packagekit-qt + kdePackages.plasma-pa + kdePackages.sddm-kcm + kdePackages.dolphin-plugins libportal-qt5 libportal From b20255e0e2e57b6a1ccc0f8a1abea0bb7fa850bf Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 21:06:54 +0100 Subject: [PATCH 029/199] Cannot write to /var/ let's fix that --- pkgs/auto-mount/default.nix | 54 ++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index afc488c..4e8a34d 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -36,7 +36,7 @@ writeShellApplication # Shared between this and the auto-mount script to ensure we're not double-triggering nor automounting while formatting # or vice-versa. - MOUNT_LOCK="/var/run/jupiter-automount-''${DEVBASE//\/_}.lock" + MOUNT_LOCK="/home/lillian/lock/jupiter-automount-''${DEVBASE//\/_}.lock" # Obtain lock exec 9<>"$MOUNT_LOCK" @@ -60,20 +60,20 @@ writeShellApplication send_steam_url() { - local command - command="$1" - local arg - arg="$2" - local encoded - encoded=$(urlencode "$arg") - if pgrep -x "steam" > /dev/null; then - # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent - # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess - systemd-run -M 1000@ --user --collect --wait sh -c "./.steam/root/ubuntu12_32/steam steam://''${command}/''${encoded@Q}" - echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" - else - echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" - fi + local command + command="$1" + local arg + arg="$2" + local encoded + encoded=$(urlencode "$arg") + if pgrep -x "steam" > /dev/null; then + # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent + # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess + systemd-run -M 1000@ --user --collect --wait sh -c "./.steam/root/ubuntu12_32/steam steam://''${command}/''${encoded@Q}" + echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" + else + echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" + fi } # From https://gist.github.com/HazCod/da9ec610c3d50ebff7dd5e7cac76de05 @@ -106,25 +106,25 @@ writeShellApplication case "''${ID_FS_TYPE}" in "ntfs") - echo "FSType is NTFS" - #Extra Opts don't seem necessary anymore? add if required - #OPTS+="" + echo "FSType is NTFS" + #Extra Opts don't seem necessary anymore? add if required + #OPTS+="" ;; "exfat") - echo "FSType is exFat" + echo "FSType is exFat" #OPTS+=",users,gid=100,umask=000,shortname=mixed,utf8=1,flush" ;; "btrfs") - echo "FSType is btrfs" + echo "FSType is btrfs" ;; "ext4") echo "FSType is ext4" - #exit 2 - ;; + #exit 2 + ;; *) echo "Error mounting ''${DEVICE}: unsupported fstype: ''${ID_FS_TYPE} - ''${dev_json}" - rm "''${MOUNT_LOCK}" - exit 2 + rm "''${MOUNT_LOCK}" + exit 2 ;; esac @@ -143,9 +143,9 @@ writeShellApplication /org/freedesktop/UDisks2/block_devices/"''${DEVBASE}" \ org.freedesktop.UDisks2.Filesystem \ Mount 'a{sv}' 3 \ - as-user s lillian \ - auth.no_user_interaction b true \ - options s "$OPTS") || ret=$? + as-user s lillian \ + auth.no_user_interaction b true \ + options s "$OPTS") || ret=$? if (( ret != 0 )); then send_steam_url "system/devicemountresult" "''${DEVBASE}/''${MOUNT_ERROR}" From 88c5a3de6bf81937cbfe801b51df279922983730 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 21:10:06 +0100 Subject: [PATCH 030/199] Add jq library --- nixos/hosts/shodan/configuration.nix | 1 + pkgs/auto-mount/default.nix | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 6db593d..462e094 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -53,6 +53,7 @@ git-filter-repo home-manager htop + jq noto-fonts noto-fonts-emoji-blob-bin noto-fonts-emoji diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 4e8a34d..d109ab5 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, - direnv, + jq, writeShellApplication, }: writeShellApplication @@ -10,7 +10,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = []; + runtimeInputs = [jq]; text = '' set -euo pipefail From 70f63daf80fe719ebe3053e1809e7f9800d33626 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 21:36:29 +0100 Subject: [PATCH 031/199] Add fs tools --- nixos/shared/packages/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/shared/packages/default.nix b/nixos/shared/packages/default.nix index 6f1b6e9..a91bdbd 100644 --- a/nixos/shared/packages/default.nix +++ b/nixos/shared/packages/default.nix @@ -26,6 +26,8 @@ # System tools age alejandra + bcachefs-tools + e2fsprogs git git-filter-repo home-manager From ca4553749ca72169177876a35580353706e064ff Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 18 Mar 2024 22:30:27 +0100 Subject: [PATCH 032/199] Make shodan more secure for reinstall, copied stuff from EDI --- disko/shodan/default.nix | 71 +++++++++++++++++++ flake.nix | 2 + nixos/hosts/shodan/configuration.nix | 11 ++- nixos/hosts/shodan/hardware-configuration.nix | 19 ----- 4 files changed, 83 insertions(+), 20 deletions(-) create mode 100644 disko/shodan/default.nix diff --git a/disko/shodan/default.nix b/disko/shodan/default.nix new file mode 100644 index 0000000..1375e5a --- /dev/null +++ b/disko/shodan/default.nix @@ -0,0 +1,71 @@ +{ + disko.devices = { + disk = { + nvme0n1 = { + type = "disk"; + device = "/dev/disk/by-path/pci-0000:01:00.0-nvme-1"; + content = { + type = "gpt"; + partitions = { + ESP = { + size = "512M"; + type = "EF00"; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + mountOptions = [ + "defaults" + ]; + }; + }; + luks = { + size = "100%"; + content = { + type = "luks"; + name = "crypted"; + extraOpenArgs = []; + settings = { + # if you want to use the key for interactive login be sure there is no trailing newline + # for example use `echo -n "password" > /tmp/secret.key` + #keyFile = "/tmp/secret.key"; + allowDiscards = true; + }; + #additionalKeyFiles = ["/tmp/additionalSecret.key"]; + content = { + type = "lvm_pv"; + vg = "pool"; + }; + }; + }; + }; + }; + }; + }; + lvm_vg = { + pool = { + type = "lvm_vg"; + lvs = { + swap = { + size = "16G"; + content = { + type = "swap"; + resumeDevice = true; # resume from hiberation from this device + }; + }; + root = { + size = "100%FREE"; + content = { + type = "filesystem"; + format = "bcachefs"; + mountpoint = "/"; + mountOptions = [ + "defaults" + ]; + }; + }; + }; + }; + }; + }; +} diff --git a/flake.nix b/flake.nix index f352745..1016c5d 100644 --- a/flake.nix +++ b/flake.nix @@ -176,6 +176,8 @@ # > Our main nixos configuration file < ./nixos/hosts/shodan/configuration.nix sops-nix.nixosModules.sops + lanzaboote.nixosModules.lanzaboote + disko.nixosModules.disko home-manager.nixosModules.home-manager { home-manager.sharedModules = [inputs.plasma-manager.homeManagerModules.plasma-manager]; diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 462e094..b01c75a 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -22,6 +22,8 @@ # ./nvim.nix ./hardware-configuration.nix + ../../../disko/EDI + ./auto-mount.nix ]; @@ -184,7 +186,7 @@ enable = true; }; - users.users.lillian.extraGroups = ["decky"]; + users.users.lillian.extraGroups = ["decky" "tss"]; # Enable completion of system packages by zsh environment.pathsToLink = ["/share/zsh"]; @@ -199,6 +201,13 @@ networking.hostName = "shodan"; + security.tpm2.enable = true; + security.tpm2.pkcs11.enable = true; # expose /run/current-system/sw/lib/libtpm2_pkcs11.so + security.tpm2.tctiEnvironment.enable = true; # TPM2TOOLS_TCTI and TPM2_PKCS11_TCTI env variables + # tss group has access to TPM devices + + boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest; + boot.supportedFilesystems = ["bcachefs"]; boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.configurationLimit = 3; boot.loader.timeout = 0; diff --git a/nixos/hosts/shodan/hardware-configuration.nix b/nixos/hosts/shodan/hardware-configuration.nix index ac88e90..fdfefac 100644 --- a/nixos/hosts/shodan/hardware-configuration.nix +++ b/nixos/hosts/shodan/hardware-configuration.nix @@ -17,25 +17,6 @@ boot.kernelModules = ["kvm-amd"]; boot.extraModulePackages = []; - fileSystems."/" = { - device = "/dev/disk/by-uuid/b29d5a9c-a4a6-4321-a767-27ed928cfa94"; - fsType = "ext4"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/ABC6-B031"; - fsType = "vfat"; - }; - - fileSystems."/run/media/lillian/SD" = { - device = "/dev/mmcblk0p1"; - fsType = "exfat"; - }; - - swapDevices = [ - {device = "/dev/disk/by-uuid/c0c87d80-b6be-444a-a76f-b32d35c38994";} - ]; - # 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 From def2ae15e4e2bb9dd1455b4cbcdd6e66fc5003a8 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 01:55:20 +0100 Subject: [PATCH 033/199] Disable quiet boot for now --- nixos/hosts/shodan/configuration.nix | 6 +++--- nixos/hosts/shodan/secrets/sops.yaml | 5 ++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index b01c75a..1621397 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -212,9 +212,9 @@ boot.loader.systemd-boot.configurationLimit = 3; boot.loader.timeout = 0; boot.loader.efi.canTouchEfiVariables = true; - boot.consoleLogLevel = 0; - boot.kernelParams = ["quiet" "udev.log_priority=0" "fbcon=vc:2-6" "console=tty0"]; - boot.plymouth.enable = true; + #boot.consoleLogLevel = 0; + #boot.kernelParams = ["quiet" "udev.log_priority=0" "fbcon=vc:2-6" "console=tty0"]; + #boot.plymouth.enable = true; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion system.stateVersion = "unstable"; diff --git a/nixos/hosts/shodan/secrets/sops.yaml b/nixos/hosts/shodan/secrets/sops.yaml index cdc6591..f203c8e 100644 --- a/nixos/hosts/shodan/secrets/sops.yaml +++ b/nixos/hosts/shodan/secrets/sops.yaml @@ -1,4 +1,3 @@ -pass: ENC[AES256_GCM,data:M7V75Q7I,iv:d59fWvFsEOOu8A+BSK0f2ZskX1SXHN1wA3EfGGsHp70=,tag:FLTogvUgI3HdKYWCJc/M1Q==,type:int] lillian-password: ENC[AES256_GCM,data:uPNBvMyhkiX3eedduFlsFUIcas/VBVSYrsmGTlgGUOzTQST59CYZRoq0ArphIJ3+Usy6KbR5tA5FCp4PoB3qVYBfjlAq6dhZIw==,iv:TiUIo2lvdL6SiDuW4gWn0TeJXkz5MldzqGxuK3MNPnE=,tag:d3p/h+q50JxygDtk2qxIeQ==,type:str] sops: kms: [] @@ -15,8 +14,8 @@ sops: KzNBMCtUaS9sU21Xc1JUd1FSR29tSkEKyqaDM/WUWjK2l+ahE6sIFYsQ6Qtkf7yz NWFTzsDZBmm9kpSIjchf+PuBuoRHeEKbEH8jnMlYB3J8boEnUnXMlw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-02-22T12:17:27Z" - mac: ENC[AES256_GCM,data:JYOxnbBK2Uj/TH9Pc6gFf0xE82lD726Jm2R7fz4WYM3pAeYoeauRVU0YoxKhOHmAjAq9ZyHZVdWg3bSMMEz9ONz/F6LZiI5qegT+SO3uAPaTRwUa639G6RGO5b86LIRPuXBw5sdePeoxDt62rOiT6UhySK5XiEysEv5NyQFijlw=,iv:1pbuTtnRbaNKRn73NLZ+s3ZW2sGAc80tRd2QWTR4688=,tag:YndVhpjQC1aUBhmv7d/4+A==,type:str] + lastmodified: "2024-03-19T00:42:59Z" + mac: ENC[AES256_GCM,data:WuwpvgM5WCmtsb9WH6us1dn0+qQuV/6+ooI8K7Wp+VFlMWLA4g509TgOFHG+cxWJeN2cRtilnHM1INv1U6uadjWis0LrjrqbHaMRJ5aAr3/zKoTXWTG4pRNykoYmCkwHLnx0gJi6hm4PbKOIFVM+6V5m9JCLKRVO6eqyW15SVww=,iv:xVR5ZGs2Ww+J57qreIlHSW8A+ADAOjzM7B+KLRFrRLw=,tag:6KTaeX8+Txz4j1UJUWRj+w==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.8.1 From e7416deafd16f778e14c4a6d96e744a38e6993b1 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 01:58:26 +0100 Subject: [PATCH 034/199] Enable lanzaboot on shodan :) --- nixos/hosts/shodan/configuration.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 1621397..0270307 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -208,7 +208,17 @@ boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest; boot.supportedFilesystems = ["bcachefs"]; - boot.loader.systemd-boot.enable = true; + # Lanzaboote currently replaces the systemd-boot module. + # This setting is usually set to true in configuration.nix + # generated at installation time. So we force it to false + # for now. + boot.loader.systemd-boot.enable = lib.mkForce false; + boot.initrd.systemd.enable = true; + + boot.lanzaboote = { + enable = true; + pkiBundle = "/etc/secureboot"; + }; boot.loader.systemd-boot.configurationLimit = 3; boot.loader.timeout = 0; boot.loader.efi.canTouchEfiVariables = true; From 1a68af56941b0242858377bf0e33befb34ac6847 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 02:43:59 +0100 Subject: [PATCH 035/199] Fix chown command --- pkgs/auto-mount/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index d109ab5..1fe2bff 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -190,7 +190,7 @@ writeShellApplication else #TODO check permissions are 1000 when creating new SteamLibrary mkdir -p "''${mount_point}/SteamLibrary" - chown lillian:lillian "''${mount_point}/SteamLibrary" + chown lillian:users "''${mount_point}/SteamLibrary" send_steam_url "addlibraryfolder" "''${mount_point}/SteamLibrary" fi } From c38a2b6f66ac9062c69f10b90d49cd02ab9e0971 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 12:18:16 +0100 Subject: [PATCH 036/199] Enable sddm --- nixos/desktop/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix index dbe40da..54cdecc 100644 --- a/nixos/desktop/default.nix +++ b/nixos/desktop/default.nix @@ -93,6 +93,7 @@ # Enable the KDE Plasma Desktop Environment. services.xserver.displayManager.sddm.wayland.enable = true; + services.xserver.displayManager.sddm.enable = true; services.desktopManager.plasma6.enable = true; services.xserver.displayManager.defaultSession = "plasma"; programs.kdeconnect.enable = true; From 255a4130ff65d72c29dc196eaa9c8a16813b4710 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 12:46:02 +0100 Subject: [PATCH 037/199] Try and add some inputs to the auto-mount script --- pkgs/auto-mount/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 1fe2bff..ff231f0 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -2,6 +2,8 @@ lib, stdenv, jq, + coreutils, + udisks, writeShellApplication, }: writeShellApplication @@ -10,7 +12,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq]; + runtimeInputs = [jq coreutils udisks]; text = '' set -euo pipefail From 9d4ece44644f34e5004efb3a075bad569043b182 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 12:57:56 +0100 Subject: [PATCH 038/199] I sure hope this doesn't break shodan --- nixos/hosts/shodan/configuration.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 0270307..b0c4da4 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -206,7 +206,6 @@ security.tpm2.tctiEnvironment.enable = true; # TPM2TOOLS_TCTI and TPM2_PKCS11_TCTI env variables # tss group has access to TPM devices - boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest; boot.supportedFilesystems = ["bcachefs"]; # Lanzaboote currently replaces the systemd-boot module. # This setting is usually set to true in configuration.nix From 5038a75cb6b440fd9d080d007cac72723126b592 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 14:36:23 +0100 Subject: [PATCH 039/199] Change jovian to my fork --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 1016c5d..f15dfa1 100644 --- a/flake.nix +++ b/flake.nix @@ -46,7 +46,7 @@ lanzaboote.url = "github:nix-community/lanzaboote"; # Jovian nixos (steam deck) - jovian.url = "github:Jovian-Experiments/Jovian-NixOS"; + jovian.url = "github:Lillian-Violet/Jovian-NixOS-bcachefs"; # Home manager home-manager.url = "github:nix-community/home-manager/master"; From 4078aa6690b5291b40dfa55f8d207442eeff5630 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 19 Mar 2024 14:37:15 +0100 Subject: [PATCH 040/199] Disable this for now --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index b0c4da4..0044ab2 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -206,7 +206,7 @@ security.tpm2.tctiEnvironment.enable = true; # TPM2TOOLS_TCTI and TPM2_PKCS11_TCTI env variables # tss group has access to TPM devices - boot.supportedFilesystems = ["bcachefs"]; + # boot.supportedFilesystems = ["bcachefs"]; # Lanzaboote currently replaces the systemd-boot module. # This setting is usually set to true in configuration.nix # generated at installation time. So we force it to false From 9b2fbd4ae5b738ded08ae8b407f86b8d3285c87e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 16:43:19 +0100 Subject: [PATCH 041/199] disable secure boot shodan, updates to other stuff --- flake.lock | 80 ++++++++++++++-------------- flake.nix | 2 +- nixos/hosts/shodan/auto-mount.nix | 3 +- nixos/hosts/shodan/configuration.nix | 10 ++-- 4 files changed, 47 insertions(+), 48 deletions(-) diff --git a/flake.lock b/flake.lock index 66dd9f8..4b349db 100644 --- a/flake.lock +++ b/flake.lock @@ -52,11 +52,11 @@ ] }, "locked": { - "lastModified": 1710648418, - "narHash": "sha256-DW8l1iofy9lYeZaHLX89Wvvry2mzp2R2Yk4cM5pjB8g=", + "lastModified": 1710785672, + "narHash": "sha256-tEP/amp09fSKeTBrcHWAYr/tQ0g2ZxJQlnCiZDi6qtY=", "owner": "famedly", "repo": "conduit", - "rev": "a8da61e5b7152da0925f9f9f25056144d24fe4a6", + "rev": "81bc1fc4e324c4798dc7b7e3cec94495a94455e0", "type": "gitlab" }, "original": { @@ -137,11 +137,11 @@ ] }, "locked": { - "lastModified": 1710427903, - "narHash": "sha256-sV0Q5ndvfjK9JfCg/QM/HX/fcittohvtq8dD62isxdM=", + "lastModified": 1710724748, + "narHash": "sha256-aXlifKr6Brg0SBUBgRNEBaZf3JLUeGhM9BX2gam+vvo=", "owner": "nix-community", "repo": "disko", - "rev": "21d89b333ca300bef82c928c856d48b94a9f997c", + "rev": "c09c3a9639690f94ddff44c3dd25c85602e5aeb2", "type": "github" }, "original": { @@ -348,11 +348,11 @@ "systems": "systems_3" }, "locked": { - "lastModified": 1709126324, - "narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "d465f4819400de7c8d874d50b982301f28a84605", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -390,11 +390,11 @@ ] }, "locked": { - "lastModified": 1710532761, - "narHash": "sha256-SUXGZNrXX05YA9G6EmgupxhOr3swI1gcxLUeDMUhrEY=", + "lastModified": 1710820906, + "narHash": "sha256-2bNMraoRB4pdw/HtxgYTFeMhEekBZeQ53/a8xkqpbZc=", "owner": "nix-community", "repo": "home-manager", - "rev": "206f457fffdb9a73596a4cb2211a471bd305243d", + "rev": "022464438a85450abb23d93b91aa82e0addd71fb", "type": "github" }, "original": { @@ -410,16 +410,16 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1710404304, - "narHash": "sha256-tYsUAsZgt9TT7d+r1KRYHWyBRWedJ39SXNBVSCQVsGQ=", - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", - "rev": "ffa51458aec4d53aac85b6dee1ee2ec29f4e953f", + "lastModified": 1710856083, + "narHash": "sha256-kG/jMBaXlt+6LxL5uqOut9H1flEpLkAv7IezFKs4djA=", + "owner": "Lillian-Violet", + "repo": "Jovian-NixOS-bcachefs", + "rev": "2d9c09d9016af9ac8311c30f5b8a6f9a7ae6a427", "type": "github" }, "original": { - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", + "owner": "Lillian-Violet", + "repo": "Jovian-NixOS-bcachefs", "type": "github" } }, @@ -434,11 +434,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1710171982, - "narHash": "sha256-WFMB+Yohcvego1/vOtaq+MJ8Wvp5meOANfNifg26Ie4=", + "lastModified": 1710837180, + "narHash": "sha256-WVkLclGrUliLJUl+XaJplo09VdxyqHxZtkEmmDW2QYY=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "19ad7fd5724f30868748b8156ff25be838cd2bc5", + "rev": "ded8d23709f94aedb1407bee9e26581f258e9e3a", "type": "github" }, "original": { @@ -506,11 +506,11 @@ }, "nixlib": { "locked": { - "lastModified": 1710031547, - "narHash": "sha256-pkUg3hOKuGWMGF9WEMPPN/G4pqqdbNGJQ54yhyQYDVY=", + "lastModified": 1710636348, + "narHash": "sha256-/kB+ZWSdkZjbZ0FTqm0u84sf2jFS+30ysaEajmBjtoY=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "630ebdc047ca96d8126e16bb664c7730dc52f6e6", + "rev": "fa827dda806c5aa98f454da4c567991ab8ce422c", "type": "github" }, "original": { @@ -527,11 +527,11 @@ ] }, "locked": { - "lastModified": 1710398463, - "narHash": "sha256-fQlYanU84E8uwBpcoTCcLCwU8cqn0eQ7nwTcrWfSngc=", + "lastModified": 1710722910, + "narHash": "sha256-P5p9+WQFuABoBXBKEK1ZYu8mD6q8j/cQwZ9OYb0oh2E=", "owner": "nix-community", "repo": "nixos-generators", - "rev": "efd4e38532b5abfaa5c9fc95c5a913157dc20ccb", + "rev": "e63df01c798b99a76dc2ec25481be7dd25cd1610", "type": "github" }, "original": { @@ -542,11 +542,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1710622004, - "narHash": "sha256-6zR642tXcZzzk3C8BHxlCrR0yh8z8zMXLiuXpWDIpX0=", + "lastModified": 1710783728, + "narHash": "sha256-eIsfu3c9JUBgm3cURSKTXLEI9Dlk1azo+MWKZVqrmkc=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "968952f950a59dee9ed1e8799dda38c6dfa1bad3", + "rev": "1e679b9a9970780cd5d4dfe755a74a8f96d33388", "type": "github" }, "original": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1710669607, - "narHash": "sha256-kNj0Ka1/rkQRcigYTa1c5B6IcFuxDgM3s9jYuKUhxyM=", + "lastModified": 1710827359, + "narHash": "sha256-/KY8hffTh9SN/tTcDn/FrEiYwTXnU8NKnr4D7/stmmA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6af7e814afb3b62171eee1edc31989ee61528d25", + "rev": "5710127d9693421e78cca4f74fac2db6d67162b1", "type": "github" }, "original": { @@ -670,11 +670,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1710078301, - "narHash": "sha256-BQ3v+XPPz5dLiw2AqUEga++yfKRhqJANUqzqNL518pk=", + "lastModified": 1710672219, + "narHash": "sha256-Bp3Jsq1Jn8q4EesBlcOVNwnEipNpzYs73kvR3+3EUC4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "73d699a6ff1e83df3fd6c1e60931e13667b8ae14", + "rev": "f471be9644f3ab2f3cb868de1787ab70a537b0e7", "type": "github" }, "original": { @@ -860,11 +860,11 @@ ] }, "locked": { - "lastModified": 1710036830, - "narHash": "sha256-pnV4gO3N/7/GzyRSKTRlSfS/19KJiPSvYcL4apnSkoQ=", + "lastModified": 1710641527, + "narHash": "sha256-R9JZEevtSyg7++LEryYJRrfyEe45azJxmu2k9VezEW0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "d09dac6a63a2ac4b74ac2ecdc19acd8c46c2da2c", + "rev": "50db54295d3922a3b7a40d580b84d75150b36c34", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index f15dfa1..1016c5d 100644 --- a/flake.nix +++ b/flake.nix @@ -46,7 +46,7 @@ lanzaboote.url = "github:nix-community/lanzaboote"; # Jovian nixos (steam deck) - jovian.url = "github:Lillian-Violet/Jovian-NixOS-bcachefs"; + jovian.url = "github:Jovian-Experiments/Jovian-NixOS"; # Home manager home-manager.url = "github:nix-community/home-manager/master"; diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 3901309..d9ac4a3 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -6,8 +6,6 @@ pkgs, ... }: { - environment.systemPackages = with pkgs; [auto-mount]; - services.udev.extraRules = '' KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" @@ -17,6 +15,7 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services."external-drive-mount@" = { + path = with pkgs; [jq coreutils udisks]; enable = true; description = "Mount External Drive on %i"; serviceConfig = { diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 0044ab2..ca2955e 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -211,13 +211,13 @@ # This setting is usually set to true in configuration.nix # generated at installation time. So we force it to false # for now. - boot.loader.systemd-boot.enable = lib.mkForce false; + boot.loader.systemd-boot.enable = true; boot.initrd.systemd.enable = true; - boot.lanzaboote = { - enable = true; - pkiBundle = "/etc/secureboot"; - }; + # boot.lanzaboote = { + # enable = true; + # pkiBundle = "/etc/secureboot"; + # }; boot.loader.systemd-boot.configurationLimit = 3; boot.loader.timeout = 0; boot.loader.efi.canTouchEfiVariables = true; From 3111ffeb03540ffdd9f5faca756cccbac6a5db84 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 16:48:59 +0100 Subject: [PATCH 042/199] Revert kernel to latest or now --- nixos/hosts/shodan/configuration.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index ca2955e..841aee8 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -214,6 +214,8 @@ boot.loader.systemd-boot.enable = true; boot.initrd.systemd.enable = true; + boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest; + # boot.lanzaboote = { # enable = true; # pkiBundle = "/etc/secureboot"; From d1a5f75cd08f8cf45002fc56bc77f169679dc93f Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 16:50:15 +0100 Subject: [PATCH 043/199] update flake lock --- flake.lock | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/flake.lock b/flake.lock index 4b349db..21c76c4 100644 --- a/flake.lock +++ b/flake.lock @@ -137,11 +137,11 @@ ] }, "locked": { - "lastModified": 1710724748, - "narHash": "sha256-aXlifKr6Brg0SBUBgRNEBaZf3JLUeGhM9BX2gam+vvo=", + "lastModified": 1710906792, + "narHash": "sha256-kFzpfZcInLhBFWHy452NlvFuzNr0BDEkz3w9Sgg2ypo=", "owner": "nix-community", "repo": "disko", - "rev": "c09c3a9639690f94ddff44c3dd25c85602e5aeb2", + "rev": "e9875b969086a53dff5ec4677575ad3156fc875d", "type": "github" }, "original": { @@ -410,16 +410,16 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1710856083, - "narHash": "sha256-kG/jMBaXlt+6LxL5uqOut9H1flEpLkAv7IezFKs4djA=", - "owner": "Lillian-Violet", - "repo": "Jovian-NixOS-bcachefs", - "rev": "2d9c09d9016af9ac8311c30f5b8a6f9a7ae6a427", + "lastModified": 1710915975, + "narHash": "sha256-yOc0AD6ba7mbialNciZGzuSQLMo4CopoZGEfcUugA4I=", + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", + "rev": "179d73fbe14c5bdb835d10bcc1c783466112bfa6", "type": "github" }, "original": { - "owner": "Lillian-Violet", - "repo": "Jovian-NixOS-bcachefs", + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", "type": "github" } }, @@ -622,11 +622,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1710631334, - "narHash": "sha256-rL5LSYd85kplL5othxK5lmAtjyMOBg390sGBTb3LRMM=", + "lastModified": 1710806803, + "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "c75037bbf9093a2acb617804ee46320d6d1fea5a", + "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", "type": "github" }, "original": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1710827359, - "narHash": "sha256-/KY8hffTh9SN/tTcDn/FrEiYwTXnU8NKnr4D7/stmmA=", + "lastModified": 1710889954, + "narHash": "sha256-Pr6F5Pmd7JnNEMHHmspZ0qVqIBVxyZ13ik1pJtm2QXk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5710127d9693421e78cca4f74fac2db6d67162b1", + "rev": "7872526e9c5332274ea5932a0c3270d6e4724f3b", "type": "github" }, "original": { @@ -686,11 +686,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1710631334, - "narHash": "sha256-rL5LSYd85kplL5othxK5lmAtjyMOBg390sGBTb3LRMM=", + "lastModified": 1710806803, + "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "c75037bbf9093a2acb617804ee46320d6d1fea5a", + "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", "type": "github" }, "original": { From 0c6b872152b8ca05e4dac930e3da6aa80a357c9c Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 16:55:00 +0100 Subject: [PATCH 044/199] add efitools an sbctl to shodan --- nixos/hosts/shodan/configuration.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 841aee8..f48fe9c 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -51,6 +51,7 @@ #System: alejandra btrfs-progs + efitools git git-filter-repo home-manager @@ -62,6 +63,7 @@ oh-my-zsh rsync rustdesk + sbctl wget zsh From d887ee5220d0f5818e51b6bd869dc736986cb1cf Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 17:01:59 +0100 Subject: [PATCH 045/199] Make shodan's disk ext4 --- disko/shodan/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/disko/shodan/default.nix b/disko/shodan/default.nix index 1375e5a..0ce86bc 100644 --- a/disko/shodan/default.nix +++ b/disko/shodan/default.nix @@ -57,7 +57,7 @@ size = "100%FREE"; content = { type = "filesystem"; - format = "bcachefs"; + format = "ext4"; mountpoint = "/"; mountOptions = [ "defaults" From ee0f382c0c98cc7b193cf9b37ad3de15c2bf1b47 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 17:43:53 +0100 Subject: [PATCH 046/199] No more bcachefs --- nixos/hosts/shodan/auto-mount.nix | 2 +- nixos/hosts/shodan/configuration.nix | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index d9ac4a3..814bf47 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -15,7 +15,7 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks]; + path = with pkgs; [jq coreutils udisks bash]; enable = true; description = "Mount External Drive on %i"; serviceConfig = { diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index f48fe9c..d2e6faa 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -216,8 +216,6 @@ boot.loader.systemd-boot.enable = true; boot.initrd.systemd.enable = true; - boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest; - # boot.lanzaboote = { # enable = true; # pkiBundle = "/etc/secureboot"; From eed02cce8447fcb750ad47f1e050e2fcbf5f8128 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 18:14:29 +0100 Subject: [PATCH 047/199] remove bcachefs tools shodan --- nixos/desktop/default.nix | 1 + nixos/shared/packages/default.nix | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix index 54cdecc..660e2ec 100644 --- a/nixos/desktop/default.nix +++ b/nixos/desktop/default.nix @@ -34,6 +34,7 @@ # System tools aha + bcachefs-tools direnv git-filter-repo gnupg diff --git a/nixos/shared/packages/default.nix b/nixos/shared/packages/default.nix index a91bdbd..4577fb9 100644 --- a/nixos/shared/packages/default.nix +++ b/nixos/shared/packages/default.nix @@ -26,7 +26,6 @@ # System tools age alejandra - bcachefs-tools e2fsprogs git git-filter-repo From 708e4fbefcd491395f6bae190f2042ec905adaa3 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 18:17:57 +0100 Subject: [PATCH 048/199] remove the comment even? --- nixos/hosts/shodan/configuration.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index d2e6faa..80bb449 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -208,7 +208,6 @@ security.tpm2.tctiEnvironment.enable = true; # TPM2TOOLS_TCTI and TPM2_PKCS11_TCTI env variables # tss group has access to TPM devices - # boot.supportedFilesystems = ["bcachefs"]; # Lanzaboote currently replaces the systemd-boot module. # This setting is usually set to true in configuration.nix # generated at installation time. So we force it to false From dd9348b67269b66e478510d4b0250fa5a47798e7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 19:42:38 +0100 Subject: [PATCH 049/199] Try this iso, remove all references to bcachefs from shodan --- flake.nix | 24 +++-- home-manager/hosts/iso/default.nix | 13 +++ home-manager/hosts/iso/lillian.nix | 29 +++++++ nixos/hosts/iso/configuration.nix | 135 +++++++++++++++++++++++++++++ nixos/hosts/iso/secrets/sops.yaml | 21 +++++ 5 files changed, 214 insertions(+), 8 deletions(-) create mode 100644 home-manager/hosts/iso/default.nix create mode 100644 home-manager/hosts/iso/lillian.nix create mode 100644 nixos/hosts/iso/configuration.nix create mode 100644 nixos/hosts/iso/secrets/sops.yaml diff --git a/flake.nix b/flake.nix index 1016c5d..13ef2c0 100644 --- a/flake.nix +++ b/flake.nix @@ -84,6 +84,7 @@ linger, pihole, lanzaboote, + jovian, nixos-hardware, conduit, ... @@ -134,9 +135,7 @@ } ]; }; - }; - nixosConfigurations = { GLaDOS = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = {inherit inputs outputs;}; @@ -152,9 +151,7 @@ } ]; }; - }; - nixosConfigurations = { queen = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = {inherit inputs outputs;}; @@ -166,9 +163,7 @@ simple-nixos-mailserver.nixosModule ]; }; - }; - nixosConfigurations = { shodan = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = {inherit inputs outputs;}; @@ -178,15 +173,28 @@ sops-nix.nixosModules.sops lanzaboote.nixosModules.lanzaboote disko.nixosModules.disko + jovian.nixosModules.jovian + home-manager.nixosModules.home-manager + { + home-manager.sharedModules = [inputs.plasma-manager.homeManagerModules.plasma-manager]; + } + ]; + }; + + ISO = nixpkgs.lib.nixosSystem { + specialArgs = {inherit inputs outputs;}; + modules = [ + "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix" + "${nixpkgs}/nixos/modules/installer/cd-dvd/channel.nix" + ./nixos/hosts/iso/configuration.nix + sops-nix.nixosModules.sops home-manager.nixosModules.home-manager { home-manager.sharedModules = [inputs.plasma-manager.homeManagerModules.plasma-manager]; } ]; }; - }; - nixosConfigurations = { wheatley = nixpkgs.lib.nixosSystem { system = "armv7l-linux"; specialArgs = {inherit inputs outputs;}; diff --git a/home-manager/hosts/iso/default.nix b/home-manager/hosts/iso/default.nix new file mode 100644 index 0000000..c17b81a --- /dev/null +++ b/home-manager/hosts/iso/default.nix @@ -0,0 +1,13 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: { + # You can import other home-manager modules here + imports = [ + ./lillian.nix + ]; +} diff --git a/home-manager/hosts/iso/lillian.nix b/home-manager/hosts/iso/lillian.nix new file mode 100644 index 0000000..d6a4544 --- /dev/null +++ b/home-manager/hosts/iso/lillian.nix @@ -0,0 +1,29 @@ +# This is your home-manager configuration file +# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix) +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: { + # You can import other home-manager modules here + imports = [ + # If you want to use modules your own flake exports (from modules/home-manager): + # outputs.homeManagerModules.example + + # Or modules exported from other flakes (such as nix-colors): + # inputs.nix-colors.homeManagerModules.default + + # You can also split up your configuration and import pieces of it here: + # ./nvim.nix + ../../desktop + ]; + + home.packages = with pkgs; [ + ]; + + # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion + home.stateVersion = "24.05"; +} diff --git a/nixos/hosts/iso/configuration.nix b/nixos/hosts/iso/configuration.nix new file mode 100644 index 0000000..3f4d419 --- /dev/null +++ b/nixos/hosts/iso/configuration.nix @@ -0,0 +1,135 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + nixpkgs-stable, + ... +}: { + imports = [ + # If you want to use modules your own flake exports (from modules/home-manager): + # outputs.homeManagerModules.example + # outputs.nixosModules.contabo.wan + inputs.home-manager.nixosModules.home-manager + # Or modules exported from other flakes (such as nix-colors): + # inputs.nix-colors.homeManagerModules.defaults + + # Import shared settings + ../../shared + ]; + + boot.tmp.cleanOnBoot = true; + zramSwap.enable = false; + networking.domain = ""; + services.openssh = { + enable = true; + # require public key authentication for better security + settings.PasswordAuthentication = false; + settings.KbdInteractiveAuthentication = false; + settings.PermitRootLogin = "no"; + }; + + nixpkgs = { + # You can add overlays here + overlays = [ + ]; + # Configure your nixpkgs instance + config = { + # Disable if you don't want unfree packages + allowUnfree = true; + }; + }; + + #Set up sops config, and configure where the keyfile is, then set the mode for the unencrypted keys + sops.defaultSopsFile = ./secrets/sops.yaml; + + environment.systemPackages = with pkgs; [ + # Custom tools + dvd + dvt + servo + restart + install-nix + + # System tools + aha + direnv + efitools + git-filter-repo + gnupg + pciutils + sbctl + tpm2-tools + tpm2-tss + waydroid + zsh + + # KDE/QT + krunner-translator + kdePackages.discover + kdePackages.kcalc + kdePackages.kdepim-addons + kdePackages.kirigami + kdePackages.kdeconnect-kde + # kdePackages.krunner-ssh + # kdePackages.krunner-symbols + kdePackages.packagekit-qt + kdePackages.plasma-pa + kdePackages.sddm-kcm + kdePackages.dolphin-plugins + libportal-qt5 + libportal + ]; + + # Enable networking + networking.networkmanager.enable = true; + + # Contabo ipv6 nameservers: "2a02:c207::1:53" "2a02:c207::2:53" + + networking.firewall.enable = true; + + networking.firewall.allowedTCPPorts = [22]; + + programs.kdeconnect.enable = true; + + # Configure keymap in X11 + services.xserver.xkb = { + layout = "us"; + variant = ""; + options = "terminate:ctrl_alt_bksp,compose:caps_toggle"; + }; + + # Enable bluetooth hardware + hardware.bluetooth.enable = true; + + security.tpm2.enable = true; + security.tpm2.pkcs11.enable = true; # expose /run/current-system/sw/lib/libtpm2_pkcs11.so + security.tpm2.tctiEnvironment.enable = true; # TPM2TOOLS_TCTI and TPM2_PKCS11_TCTI env variables + users.users.lillian.extraGroups = ["tss"]; # tss group has access to TPM devices + + # Set your time zone. + time.timeZone = "Europe/Amsterdam"; + + programs.git = { + enable = true; + }; + + programs.direnv = { + enable = true; + }; + + # Enable completion of system packages by zsh + environment.pathsToLink = ["/share/zsh"]; + + home-manager = { + extraSpecialArgs = {inherit inputs outputs;}; + users = { + # Import your home-manager configuration + lillian = import ../../../home-manager/hosts/iso; + }; + }; + + # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion + system.stateVersion = "unstable"; +} diff --git a/nixos/hosts/iso/secrets/sops.yaml b/nixos/hosts/iso/secrets/sops.yaml new file mode 100644 index 0000000..92548c8 --- /dev/null +++ b/nixos/hosts/iso/secrets/sops.yaml @@ -0,0 +1,21 @@ +lillian-password: ENC[AES256_GCM,data:eQzZwGxK9Lw2gc8HDNw57odxPzTH4sa/2O97h3VAghRwLClmCYKT91kxj2F3kQ4iEctBl0GxdS4WoL3H9eE4/CAPffXdTmkdYg==,iv:2ezB4DNHFv5ceJ2gtATV12Azm3vFFDLX1qSSy+cKuMY=,tag:zxb5agUCDpi92bYV7+DmoA==,type:str] +sops: + kms: [] + gcp_kms: [] + azure_kv: [] + hc_vault: [] + age: + - recipient: age12e00qvf4shtmsfq3ujamyaa72pjvad2qhrxkvpl9hryrjvgxev4sjhmkxz + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSArbVd5bkxmV2FSNDVCWXN1 + RGxwdVZ5ZEROQTZ1d2ptU1RJc0dTUVlVOTE4CjhjeklubEhwUFgydkFWbDJkcU1U + VnowU29NSG10a3VKbXk3RWNWY0FwZ1EKLS0tIDJYMXhGeXArRnZ1NmQwQ3NqVHdM + dXlaN3dWOUl4Mys2V0x3Z3F6UVU4MVUKEJYpX8XhSNcM+7aUuxnIwrokY0/29Cnh + yz0HAZkaj8FwvnPnafo5jmwVyi6WXECvX5E0NZfjKH4AF5vTu6Wukg== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2024-03-20T18:17:48Z" + mac: ENC[AES256_GCM,data:3UHIoYPHC6n56CHguOVuoFd9VwCjGiD9VCYy2d5W+4XQEZpjnONX8fhwwWRm42COymz89tmqDmpDp88BnSU8uE14IaCIUoxfCaRiZtjAiHjouua2jr50aUV56pwyan8ZiiOjP8oP1VY/tsv1w0jWI9TjSTHvCdNLR8XEcf6bCrk=,iv:/lBJdkQgwZyiztQ9vSoHgY+WxXJKHFI93dxtOSunHNo=,tag:lLwrSdzoN9CzmyIdLOe5ig==,type:str] + pgp: [] + unencrypted_suffix: _unencrypted + version: 3.8.1 From 633f07d12e07d38516b00f4efc25e953a475096d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 19:46:42 +0100 Subject: [PATCH 050/199] Some iso fixes --- flake.nix | 1 + nixos/hosts/iso/configuration.nix | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/flake.nix b/flake.nix index 13ef2c0..0f6f07e 100644 --- a/flake.nix +++ b/flake.nix @@ -182,6 +182,7 @@ }; ISO = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; specialArgs = {inherit inputs outputs;}; modules = [ "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix" diff --git a/nixos/hosts/iso/configuration.nix b/nixos/hosts/iso/configuration.nix index 3f4d419..c3393fb 100644 --- a/nixos/hosts/iso/configuration.nix +++ b/nixos/hosts/iso/configuration.nix @@ -122,6 +122,17 @@ # Enable completion of system packages by zsh environment.pathsToLink = ["/share/zsh"]; + # kde power settings do not turn off screen + systemd = { + services.sshd.wantedBy = pkgs.lib.mkForce ["multi-user.target"]; + targets = { + sleep.enable = false; + suspend.enable = false; + hibernate.enable = false; + hybrid-sleep.enable = false; + }; + }; + home-manager = { extraSpecialArgs = {inherit inputs outputs;}; users = { From f480fcb86d474d0d37af29d8fa50a54261ac422e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 19:50:29 +0100 Subject: [PATCH 051/199] Update install a little more --- pkgs/install-nix-no-inhibit/default.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pkgs/install-nix-no-inhibit/default.nix b/pkgs/install-nix-no-inhibit/default.nix index aef1360..ea7ffeb 100644 --- a/pkgs/install-nix-no-inhibit/default.nix +++ b/pkgs/install-nix-no-inhibit/default.nix @@ -7,7 +7,7 @@ writeShellApplication { name = "install-nix-no-inhibit"; - runtimeInputs = []; + runtimeInputs = [git gum]; text = '' # An install script for NixOS installation to /tmp @@ -25,6 +25,16 @@ writeShellApplication select dir in "''${dirs[@]}"; do echo "you selected ''${dir}"; break; done popd > /dev/null pushd ./install-nix > /dev/null + gum confirm --default=false \ + "🔥 🔥 🔥 WARNING!!!! This will ERASE ALL DATA on the disk for ''${dir}. Are you sure you want to continue?" + + echo "Partitioning Disks" + sudo nix run github:nix-community/disko \ + --extra-experimental-features "nix-command flakes" \ + --no-write-lock-file \ + -- \ + --mode zap_create_mount \ + "./disko/''${dir}/default.nix" echo "NixOS Installing..." systemd-inhibit --what=idle sudo nixos-install --flake .#"''${dir}" popd > /dev/null From 2de6b9d2c9a54ae075bd98ec6ddcd6b92a2bf7d4 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 19:55:16 +0100 Subject: [PATCH 052/199] Small fixes to iso --- nixos/hosts/iso/configuration.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/hosts/iso/configuration.nix b/nixos/hosts/iso/configuration.nix index c3393fb..3202a6f 100644 --- a/nixos/hosts/iso/configuration.nix +++ b/nixos/hosts/iso/configuration.nix @@ -27,7 +27,6 @@ # require public key authentication for better security settings.PasswordAuthentication = false; settings.KbdInteractiveAuthentication = false; - settings.PermitRootLogin = "no"; }; nixpkgs = { @@ -44,6 +43,8 @@ #Set up sops config, and configure where the keyfile is, then set the mode for the unencrypted keys sops.defaultSopsFile = ./secrets/sops.yaml; + services.desktopManager.plasma6.enable = true; + environment.systemPackages = with pkgs; [ # Custom tools dvd From 5b08d092c746ad603a2ae4280880554d4484a3aa Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 21:07:22 +0100 Subject: [PATCH 053/199] That's not supposed to be there! --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 80bb449..e6833d9 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -22,7 +22,7 @@ # ./nvim.nix ./hardware-configuration.nix - ../../../disko/EDI + ../../../disko/shodan ./auto-mount.nix ]; From 32ad2da056dedb824c081bf2ffcedeca1857132e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 21:12:30 +0100 Subject: [PATCH 054/199] Add bcachefs support to install ISO --- nixos/hosts/iso/configuration.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/hosts/iso/configuration.nix b/nixos/hosts/iso/configuration.nix index 3202a6f..aa2de2c 100644 --- a/nixos/hosts/iso/configuration.nix +++ b/nixos/hosts/iso/configuration.nix @@ -142,6 +142,9 @@ }; }; + boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest; + boot.supportedFilesystems = ["bcachefs"]; + # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion system.stateVersion = "unstable"; } From c55c65998c264908a981d983ee05ce41eea4a650 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 21:54:29 +0100 Subject: [PATCH 055/199] Disable zfs for ISO --- nixos/hosts/iso/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/iso/configuration.nix b/nixos/hosts/iso/configuration.nix index aa2de2c..f8efbdb 100644 --- a/nixos/hosts/iso/configuration.nix +++ b/nixos/hosts/iso/configuration.nix @@ -143,7 +143,7 @@ }; boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest; - boot.supportedFilesystems = ["bcachefs"]; + boot.supportedFilesystems = lib.mkForce ["bcachefs" "btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs"]; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion system.stateVersion = "unstable"; From 83e04ab281cc7a99dc6d08c90f811db9350357fc Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:16:40 +0100 Subject: [PATCH 056/199] Let's try this then --- nixos/hosts/shodan/auto-mount.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 814bf47..af339de 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -15,14 +15,14 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks bash]; + path = with pkgs; [jq coreutils udisks bash automount]; enable = true; description = "Mount External Drive on %i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; - ExecStart = "/run/current-system/sw/bin/automount add %i"; - ExecStop = "/run/current-system/sw/bin/automount remove %i"; + ExecStart = "automount add %i"; + ExecStop = "automount remove %i"; }; }; } From adbd60c26627d19c55a404dd0093bd75a00af879 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:18:10 +0100 Subject: [PATCH 057/199] Can't add that --- nixos/hosts/shodan/auto-mount.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index af339de..63f64d7 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -15,7 +15,7 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks bash automount]; + path = with pkgs; [jq coreutils udisks bash]; enable = true; description = "Mount External Drive on %i"; serviceConfig = { From 3524b157f62b4df5883aa52a8a38d93e6634e841 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:21:23 +0100 Subject: [PATCH 058/199] Maybe get the name right.... --- nixos/hosts/shodan/auto-mount.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 63f64d7..e9b031f 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -15,14 +15,14 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks bash]; + path = with pkgs; [jq coreutils udisks bash auto-mount]; enable = true; description = "Mount External Drive on %i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; - ExecStart = "automount add %i"; - ExecStop = "automount remove %i"; + ExecStart = "auto-mount add %i"; + ExecStop = "auto-mount remove %i"; }; }; } From c63150ce2d3eca0e3fab71d8bfd1ea28dd94714a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:23:40 +0100 Subject: [PATCH 059/199] add auto-mount to shodan --- nixos/hosts/shodan/configuration.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index e6833d9..474e628 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -48,6 +48,9 @@ sops.defaultSopsFile = ./secrets/sops.yaml; environment.systemPackages = with pkgs; [ + # Custom tools + auto-mount + #System: alejandra btrfs-progs From 6b0155a6b4d1850fab8a06b21695f29724a76a3b Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:26:41 +0100 Subject: [PATCH 060/199] Maybe this then --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index e9b031f..d44b212 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,8 +21,8 @@ serviceConfig = { Type = "oneshot"; RemainAfterExit = true; - ExecStart = "auto-mount add %i"; - ExecStop = "auto-mount remove %i"; + ExecStart = "${pkgs.auto-mount} add %i"; + ExecStop = "${pkgs.auto-mount} remove %i"; }; }; } From 5df487f073d40b4a8ef8bc194c346322586c6b1d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:35:27 +0100 Subject: [PATCH 061/199] Maybe this will work? --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index d44b212..f4d4834 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,8 +21,8 @@ serviceConfig = { Type = "oneshot"; RemainAfterExit = true; - ExecStart = "${pkgs.auto-mount} add %i"; - ExecStop = "${pkgs.auto-mount} remove %i"; + script = "auto-mount add %i"; + preStop = "auto-mount remove %i"; }; }; } From 0b88a87abe8d06b0086e4c93c2cc800abf573593 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:40:09 +0100 Subject: [PATCH 062/199] That didn't work --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index f4d4834..db7c511 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -18,11 +18,11 @@ path = with pkgs; [jq coreutils udisks bash auto-mount]; enable = true; description = "Mount External Drive on %i"; + script = "auto-mount add %i"; + preStop = "auto-mount remove %i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; - script = "auto-mount add %i"; - preStop = "auto-mount remove %i"; }; }; } From b62c29ec45cb799536b762e0a85794446a668ca6 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:42:25 +0100 Subject: [PATCH 063/199] add flock as a requirement --- nixos/hosts/shodan/auto-mount.nix | 2 +- nixos/hosts/shodan/configuration.nix | 1 + pkgs/auto-mount/default.nix | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index db7c511..601fcf7 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -15,7 +15,7 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks bash auto-mount]; + path = with pkgs; [jq coreutils udisks bash flock auto-mount]; enable = true; description = "Mount External Drive on %i"; script = "auto-mount add %i"; diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 474e628..aa32396 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -55,6 +55,7 @@ alejandra btrfs-progs efitools + flock git git-filter-repo home-manager diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index ff231f0..c61b32c 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -4,6 +4,7 @@ jq, coreutils, udisks, + flock, writeShellApplication, }: writeShellApplication @@ -12,7 +13,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks]; + runtimeInputs = [jq coreutils udisks flock]; text = '' set -euo pipefail From f4193b5ef65fed49daf6bb026e4145003f5ceef3 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:44:34 +0100 Subject: [PATCH 064/199] util-linux might be better --- nixos/hosts/shodan/auto-mount.nix | 2 +- nixos/hosts/shodan/configuration.nix | 1 - pkgs/auto-mount/default.nix | 4 ++-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 601fcf7..3ef57c0 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -15,7 +15,7 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks bash flock auto-mount]; + path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; script = "auto-mount add %i"; diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index aa32396..474e628 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -55,7 +55,6 @@ alejandra btrfs-progs efitools - flock git git-filter-repo home-manager diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index c61b32c..48c4ad1 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -4,7 +4,7 @@ jq, coreutils, udisks, - flock, + util-linux, writeShellApplication, }: writeShellApplication @@ -13,7 +13,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks flock]; + runtimeInputs = [jq coreutils udisks util-linux]; text = '' set -euo pipefail From 12214c45e7cd51d6f0e014bd6134c8e40ad2aff2 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:50:30 +0100 Subject: [PATCH 065/199] Maybe this will work? --- result | 1 + 1 file changed, 1 insertion(+) create mode 120000 result diff --git a/result b/result new file mode 120000 index 0000000..ed246ab --- /dev/null +++ b/result @@ -0,0 +1 @@ +/nix/store/a9kdf62qv1r5s0nb40a1ij9lm2vsh418-nixos-24.05.20240319.b06025f-x86_64-linux.iso \ No newline at end of file From 9982a52479b793c01a558e1e78436d201d754d7e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:50:43 +0100 Subject: [PATCH 066/199] Oops wrong upload --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 3ef57c0..2a3601b 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -18,9 +18,9 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount add %i"; - preStop = "auto-mount remove %i"; serviceConfig = { + execStart = "auto-mount add %i"; + execStop = "auto-mount remove %i"; Type = "oneshot"; RemainAfterExit = true; }; From 442374fb10aadd132fcb2d7f049778d7ab39612e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:52:58 +0100 Subject: [PATCH 067/199] Capitalisation... --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 2a3601b..2df391f 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -19,8 +19,8 @@ enable = true; description = "Mount External Drive on %i"; serviceConfig = { - execStart = "auto-mount add %i"; - execStop = "auto-mount remove %i"; + ExecStart = "auto-mount add %i"; + ExecStop = "auto-mount remove %i"; Type = "oneshot"; RemainAfterExit = true; }; From 7ffdcc0c93b74580d9b151dbbc52ee1ad1bdaf36 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 20 Mar 2024 23:56:37 +0100 Subject: [PATCH 068/199] This is frustrating --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 2df391f..4aef501 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -19,8 +19,8 @@ enable = true; description = "Mount External Drive on %i"; serviceConfig = { - ExecStart = "auto-mount add %i"; - ExecStop = "auto-mount remove %i"; + ExecStart = "${pkgs.auto-mount} add %i"; + ExecStop = "${pkgs.auto-mount} remove %i"; Type = "oneshot"; RemainAfterExit = true; }; From 84f7b0509a34269efcea8ff3d240e625df6d8b85 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:05:37 +0100 Subject: [PATCH 069/199] Let's try this then --- nixos/hosts/shodan/auto-mount.nix | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 4aef501..ff638fb 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -9,20 +9,35 @@ services.udev.extraRules = '' KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-unmount@%k.service" KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-unmount@%k.service" KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" + KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-unmount@%k.service" ''; systemd.services."external-drive-mount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; + script = "auto-mount"; + scriptArgs = "add %i"; serviceConfig = { - ExecStart = "${pkgs.auto-mount} add %i"; - ExecStop = "${pkgs.auto-mount} remove %i"; Type = "oneshot"; RemainAfterExit = true; }; }; + + systemd.services."external-drive-unmount@" = { + path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; + enable = true; + description = "Mount External Drive on %i"; + script = "auto-mount"; + scriptArgs = "remove %i"; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = false; + }; + }; } From 301af9dc32300868f14b441275e486470af59bc6 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:12:31 +0100 Subject: [PATCH 070/199] Last shot --- nixos/hosts/shodan/auto-mount.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index ff638fb..b030b21 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,8 +21,8 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount"; - scriptArgs = "add %i"; + script = "auto-mount add"; + scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -33,8 +33,8 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount"; - scriptArgs = "remove %i"; + script = "auto-mount remove"; + scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = false; From 9aaea046a2f5ee222bd0b6425a65ad7f6ae8aa56 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:27:10 +0100 Subject: [PATCH 071/199] Oh dope --- nixos/hosts/shodan/auto-mount.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index b030b21..ac5b56a 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -17,11 +17,12 @@ KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-unmount@%k.service" ''; + systemd.services."external-drive-mount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount add"; + script = "auto-mount add "; scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; From faca909eb0759ec0e1e997aa5199b300da76bd86 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:27:50 +0100 Subject: [PATCH 072/199] The other space as well --- nixos/hosts/shodan/auto-mount.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index ac5b56a..d165e06 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -34,7 +34,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount remove"; + script = "auto-mount remove "; scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; From 9cd823818c9eacbd13e74d59c7c8dd8296cab321 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:28:26 +0100 Subject: [PATCH 073/199] Let's try this --- nixos/hosts/shodan/auto-mount.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index d165e06..06cf81e 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,8 +22,8 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount add "; - scriptArgs = "%i"; + script = "auto-mount add"; + scriptArgs = " %i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -34,8 +34,8 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount remove "; - scriptArgs = "%i"; + script = "auto-mount remove"; + scriptArgs = " %i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = false; From f89e9796fa96d01edcd86d47bd0ebfc9ce85803d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:37:07 +0100 Subject: [PATCH 074/199] Let's try this then --- nixos/hosts/shodan/auto-mount.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 06cf81e..dbeee45 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,8 +22,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount add"; - scriptArgs = " %i"; + script = "auto-mount add $@"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -34,8 +33,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount remove"; - scriptArgs = " %i"; + script = "auto-mount remove $@"; serviceConfig = { Type = "oneshot"; RemainAfterExit = false; From 585b794251e1b88800ea603fff8eff3d9ea925df Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:45:25 +0100 Subject: [PATCH 075/199] First argument then --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index dbeee45..f223b87 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,7 +22,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount add $@"; + script = "auto-mount add $1"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -33,7 +33,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount remove $@"; + script = "auto-mount remove $1"; serviceConfig = { Type = "oneshot"; RemainAfterExit = false; From 92f86fdfae48a98d97c15d162bff6839b66b7464 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:47:47 +0100 Subject: [PATCH 076/199] try an echo --- nixos/hosts/shodan/auto-mount.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index f223b87..385f69f 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,7 +22,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; description = "Mount External Drive on %i"; - script = "auto-mount add $1"; + script = "echo auto-mount add $1 && auto-mount add $1"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; From 05d9dd368a0ecd6f6cf9844d40f879b26488f1e7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:49:37 +0100 Subject: [PATCH 077/199] Maybe it only digests once? --- nixos/hosts/shodan/auto-mount.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 385f69f..568bf95 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,8 +21,7 @@ systemd.services."external-drive-mount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; - description = "Mount External Drive on %i"; - script = "echo auto-mount add $1 && auto-mount add $1"; + script = "echo auto-mount add $@ && auto-mount add $@"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -32,7 +31,6 @@ systemd.services."external-drive-unmount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; - description = "Mount External Drive on %i"; script = "auto-mount remove $1"; serviceConfig = { Type = "oneshot"; From e3ae2429c77bb37befe24600cb85e9807b97fff7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:51:28 +0100 Subject: [PATCH 078/199] Try this again? --- nixos/hosts/shodan/auto-mount.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 568bf95..744811f 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,7 +21,7 @@ systemd.services."external-drive-mount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; - script = "echo auto-mount add $@ && auto-mount add $@"; + script = "echo auto-mount add %i && auto-mount add %i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; From 19f8b887d3db517c613a74bcdd6c8814560df6fb Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:53:11 +0100 Subject: [PATCH 079/199] Oh wait am I dumb --- nixos/hosts/shodan/auto-mount.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 744811f..23b6398 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,7 +21,8 @@ systemd.services."external-drive-mount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; - script = "echo auto-mount add %i && auto-mount add %i"; + script = "echo auto-mount $@"; + scriptArgs = " %i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; From a373404b3b64061196e60d305898557928e27c2d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 00:56:04 +0100 Subject: [PATCH 080/199] Auto-mount for steam deck fixed --- nixos/hosts/shodan/auto-mount.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 23b6398..9d35bc2 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,7 +22,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; script = "echo auto-mount $@"; - scriptArgs = " %i"; + scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -32,7 +32,8 @@ systemd.services."external-drive-unmount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; - script = "auto-mount remove $1"; + script = "auto-mount remove $@"; + scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = false; From 4a55e924c3adeec8303c37e04b348d1c4ef310dd Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 01:03:53 +0100 Subject: [PATCH 081/199] Enable lanzaboot again on shodan --- nixos/hosts/shodan/configuration.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 474e628..6d92603 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -215,13 +215,13 @@ # This setting is usually set to true in configuration.nix # generated at installation time. So we force it to false # for now. - boot.loader.systemd-boot.enable = true; + boot.loader.systemd-boot.enable = lib.mkForce false; boot.initrd.systemd.enable = true; - # boot.lanzaboote = { - # enable = true; - # pkiBundle = "/etc/secureboot"; - # }; + boot.lanzaboote = { + enable = true; + pkiBundle = "/etc/secureboot"; + }; boot.loader.systemd-boot.configurationLimit = 3; boot.loader.timeout = 0; boot.loader.efi.canTouchEfiVariables = true; From 5dfd9aff8636fb88c942fd9235963b611d2086f4 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 01:15:07 +0100 Subject: [PATCH 082/199] Quiet boot for shodan again --- nixos/hosts/shodan/configuration.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 6d92603..aed0c61 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -225,9 +225,9 @@ boot.loader.systemd-boot.configurationLimit = 3; boot.loader.timeout = 0; boot.loader.efi.canTouchEfiVariables = true; - #boot.consoleLogLevel = 0; - #boot.kernelParams = ["quiet" "udev.log_priority=0" "fbcon=vc:2-6" "console=tty0"]; - #boot.plymouth.enable = true; + boot.consoleLogLevel = 0; + boot.kernelParams = ["quiet" "udev.log_priority=0" "fbcon=vc:2-6" "console=tty0"]; + boot.plymouth.enable = true; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion system.stateVersion = "unstable"; From 4178072d62a7786d06f62ee7e4b6be979693a073 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 12:09:57 +0100 Subject: [PATCH 083/199] Actually make the service auto mount please? --- nixos/hosts/shodan/auto-mount.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 9d35bc2..b031289 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,7 +21,7 @@ systemd.services."external-drive-mount@" = { path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; - script = "echo auto-mount $@"; + script = "auto-mount add $@"; scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; From 5d1bd82ba4bef33e767b42f494fa1921974aec13 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 13:19:36 +0100 Subject: [PATCH 084/199] Try this to restart it --- nixos/hosts/shodan/auto-mount.nix | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index b031289..a2d26db 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,21 +22,11 @@ path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; enable = true; script = "auto-mount add $@"; + preStop = "auto-mount remove $@"; scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; }; }; - - systemd.services."external-drive-unmount@" = { - path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; - enable = true; - script = "auto-mount remove $@"; - scriptArgs = "%i"; - serviceConfig = { - Type = "oneshot"; - RemainAfterExit = false; - }; - }; } From 464129a7e7b1f3c817598489dd94f23f741d81a5 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 13:43:22 +0100 Subject: [PATCH 085/199] Make sure pgrep is available --- nixos/hosts/shodan/auto-mount.nix | 2 +- pkgs/auto-mount/default.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index a2d26db..bfe9b1b 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -19,7 +19,7 @@ ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks bash util-linux auto-mount]; + path = with pkgs; [jq coreutils udisks bash util-linux toybox auto-mount]; enable = true; script = "auto-mount add $@"; preStop = "auto-mount remove $@"; diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 48c4ad1..7801df2 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -13,7 +13,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux]; + runtimeInputs = [jq coreutils udisks util-linux toybox]; text = '' set -euo pipefail From 7dae09a986893f12e62a197e4d5ba463be5ed964 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 13:44:10 +0100 Subject: [PATCH 086/199] add it to inputs too --- pkgs/auto-mount/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 7801df2..c3b8347 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -4,6 +4,7 @@ jq, coreutils, udisks, + toybox, util-linux, writeShellApplication, }: From 2459cea831b641204dc86b0b18f278988ac81ae8 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 13:52:07 +0100 Subject: [PATCH 087/199] Let's see what it does then --- nixos/hosts/shodan/auto-mount.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index bfe9b1b..6d0a527 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,7 +22,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux toybox auto-mount]; enable = true; script = "auto-mount add $@"; - preStop = "auto-mount remove $@"; + preStop = "echo auto-mount remove $@"; scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; From e7baa0445536e2033a93d7171c3c87abdda368bc Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 13:55:02 +0100 Subject: [PATCH 088/199] Try again then --- nixos/hosts/shodan/auto-mount.nix | 2 +- nixos/hosts/shodan/configuration.nix | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 6d0a527..11b3273 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,7 +22,7 @@ path = with pkgs; [jq coreutils udisks bash util-linux toybox auto-mount]; enable = true; script = "auto-mount add $@"; - preStop = "echo auto-mount remove $@"; + postStop = "echo auto-mount remove $@"; scriptArgs = "%i"; serviceConfig = { Type = "oneshot"; diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index aed0c61..3e26652 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -67,6 +67,7 @@ rsync rustdesk sbctl + toybox wget zsh From 2ba8c3f126d619b99e6ad0dbe55b3d3c91f69960 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:03:11 +0100 Subject: [PATCH 089/199] Let's try this then, echo only first --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 11b3273..69b1760 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -21,10 +21,10 @@ systemd.services."external-drive-mount@" = { path = with pkgs; [jq coreutils udisks bash util-linux toybox auto-mount]; enable = true; - script = "auto-mount add $@"; - postStop = "echo auto-mount remove $@"; scriptArgs = "%i"; serviceConfig = { + execStart = "echo ${pkgs.auto-mount} add $@"; + execStop = "echo ${pkgs.auto-mount} remove $@"; Type = "oneshot"; RemainAfterExit = true; }; From a0c64de181182fd9c9b092a3bb0e62f45e96df34 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:05:46 +0100 Subject: [PATCH 090/199] Fix a typo --- nixos/hosts/shodan/auto-mount.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 69b1760..9338062 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -22,9 +22,10 @@ path = with pkgs; [jq coreutils udisks bash util-linux toybox auto-mount]; enable = true; scriptArgs = "%i"; + serviceConfig = { - execStart = "echo ${pkgs.auto-mount} add $@"; - execStop = "echo ${pkgs.auto-mount} remove $@"; + ExecStart = "echo ${pkgs.auto-mount} add $@"; + ExecStop = "echo ${pkgs.auto-mount} remove $@"; Type = "oneshot"; RemainAfterExit = true; }; From b52ae19a64e16ac72e63cb27567c75465715bd1d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:12:22 +0100 Subject: [PATCH 091/199] Hmm --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 9338062..74a3eba 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -24,8 +24,8 @@ scriptArgs = "%i"; serviceConfig = { - ExecStart = "echo ${pkgs.auto-mount} add $@"; - ExecStop = "echo ${pkgs.auto-mount} remove $@"; + ExecStart = "${pkgs.toybox}/bin/echo ${pkgs.auto-mount} add %i"; + ExecStop = "${pkgs.toybox}/bin/echo ${pkgs.auto-mount} remove %i"; Type = "oneshot"; RemainAfterExit = true; }; From 15a24a1a61264dfff7a2374ebbb2dc261daafeb0 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:15:16 +0100 Subject: [PATCH 092/199] Alrighty this should execute correctly then, auto-mount ACTUALLY fixed --- nixos/hosts/shodan/auto-mount.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 74a3eba..b323eb3 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -24,8 +24,8 @@ scriptArgs = "%i"; serviceConfig = { - ExecStart = "${pkgs.toybox}/bin/echo ${pkgs.auto-mount} add %i"; - ExecStop = "${pkgs.toybox}/bin/echo ${pkgs.auto-mount} remove %i"; + ExecStart = "${pkgs.auto-mount}/bin/auto-mount add %i"; + ExecStop = "${pkgs.auto-mount}/bin/auto-mount remove %i"; Type = "oneshot"; RemainAfterExit = true; }; From beefb2fb6c84d3290de1e56b662407bb5a955bb7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:19:08 +0100 Subject: [PATCH 093/199] Install the packages needed for auto-mount explicitly --- nixos/hosts/shodan/configuration.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 3e26652..136beab 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -54,6 +54,7 @@ #System: alejandra btrfs-progs + coreutils efitools git git-filter-repo @@ -68,6 +69,8 @@ rustdesk sbctl toybox + udisks + util-linux wget zsh From 9b7505fdc554a79fcff86903ded77883a5785213 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:33:31 +0100 Subject: [PATCH 094/199] Fix the steam command thing maybe --- nixos/hosts/shodan/auto-mount.nix | 4 +--- pkgs/auto-mount/default.nix | 5 +++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index b323eb3..42aa919 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -19,10 +19,8 @@ ''; systemd.services."external-drive-mount@" = { - path = with pkgs; [jq coreutils udisks bash util-linux toybox auto-mount]; + path = with pkgs; [jq coreutils udisks bash util-linux toybox auto-mount steam]; enable = true; - scriptArgs = "%i"; - serviceConfig = { ExecStart = "${pkgs.auto-mount}/bin/auto-mount add %i"; ExecStop = "${pkgs.auto-mount}/bin/auto-mount remove %i"; diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index c3b8347..00c461d 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -1,6 +1,7 @@ { lib, stdenv, + steam-fsh, jq, coreutils, udisks, @@ -14,7 +15,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox]; + runtimeInputs = [jq coreutils udisks util-linux toybox steam]; text = '' set -euo pipefail @@ -73,7 +74,7 @@ writeShellApplication if pgrep -x "steam" > /dev/null; then # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess - systemd-run -M 1000@ --user --collect --wait sh -c "./.steam/root/ubuntu12_32/steam steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steam}/bin/steam steam://''${command}/''${encoded@Q}" echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" From bc039480d82274d19cce03560fcbb9aaf467ed32 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:34:44 +0100 Subject: [PATCH 095/199] Add pkgs I suppose --- pkgs/auto-mount/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 00c461d..576a421 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -2,6 +2,7 @@ lib, stdenv, steam-fsh, + pkgs, jq, coreutils, udisks, From 88856b24d326790dc13e45c6648d00cc284c8095 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 14:35:15 +0100 Subject: [PATCH 096/199] Steam needs pkgs? --- pkgs/auto-mount/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 576a421..1f3af26 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -16,7 +16,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox steam]; + runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steam]; text = '' set -euo pipefail From f75598b51423b55f1cf8b0cbbe2e4c893f614ba9 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:11:38 +0100 Subject: [PATCH 097/199] Steam fhs? --- pkgs/auto-mount/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 1f3af26..d66fc7f 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -75,7 +75,7 @@ writeShellApplication if pgrep -x "steam" > /dev/null; then # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess - systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steam}/bin/steam steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steam}/bin/steam-fhs steam://''${command}/''${encoded@Q}" echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" From f1a773498fc58d95507b89bc3b8349e0242fcbf7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:12:39 +0100 Subject: [PATCH 098/199] This then --- pkgs/auto-mount/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index d66fc7f..1d73d3f 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, - steam-fsh, + steam, pkgs, jq, coreutils, @@ -16,7 +16,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steam]; + runtimeInputs = [jq coreutils udisks util-linux toybox steam]; text = '' set -euo pipefail @@ -75,7 +75,7 @@ writeShellApplication if pgrep -x "steam" > /dev/null; then # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess - systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steam}/bin/steam-fhs steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "${steam}/bin/steam-fhs steam://''${command}/''${encoded@Q}" echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" From 47ac0bd975e6c08b43665e7d3d4c87c500777bc6 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:13:40 +0100 Subject: [PATCH 099/199] That's a typo --- pkgs/auto-mount/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 1d73d3f..655e968 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -75,7 +75,7 @@ writeShellApplication if pgrep -x "steam" > /dev/null; then # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess - systemd-run -M 1000@ --user --collect --wait sh -c "${steam}/bin/steam-fhs steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "${steam}/bin/steam steam://''${command}/''${encoded@Q}" echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" From 6e661fd3afcbedb5d52617c8d8acaf7fd709d8b2 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:19:33 +0100 Subject: [PATCH 100/199] Echo first --- pkgs/auto-mount/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 655e968..fa6b28f 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -75,8 +75,8 @@ writeShellApplication if pgrep -x "steam" > /dev/null; then # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess - systemd-run -M 1000@ --user --collect --wait sh -c "${steam}/bin/steam steam://''${command}/''${encoded@Q}" echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" + systemd-run -M 1000@ --user --collect --wait sh -c "${steam}/bin/steam steam://''${command}/''${encoded@Q}" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" fi From 787a898957fa8c58190e81cb08eee2cc3522edf6 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:23:24 +0100 Subject: [PATCH 101/199] Log file? --- pkgs/auto-mount/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index fa6b28f..a8a3099 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -75,7 +75,7 @@ writeShellApplication if pgrep -x "steam" > /dev/null; then # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess - echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" + echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" >> /home/lillian/steam.txt systemd-run -M 1000@ --user --collect --wait sh -c "${steam}/bin/steam steam://''${command}/''${encoded@Q}" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" From aa361519cc38025e621dcb8cc2aa0c3c919e1a61 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:25:40 +0100 Subject: [PATCH 102/199] No send url --- pkgs/auto-mount/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index a8a3099..dc9a1e3 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -154,7 +154,7 @@ writeShellApplication options s "$OPTS") || ret=$? if (( ret != 0 )); then - send_steam_url "system/devicemountresult" "''${DEVBASE}/''${MOUNT_ERROR}" + # send_steam_url "system/devicemountresult" "''${DEVBASE}/''${MOUNT_ERROR}" echo "Error mounting ''${DEVICE} (status = $ret)" exit 1 fi @@ -192,12 +192,12 @@ writeShellApplication echo "**** Mounted ''${DEVICE} at ''${mount_point} ****" if [ -f "''${mount_point}/libraryfolder.vdf" ]; then - send_steam_url "addlibraryfolder" "''${mount_point}" + # send_steam_url "addlibraryfolder" "''${mount_point}" else #TODO check permissions are 1000 when creating new SteamLibrary mkdir -p "''${mount_point}/SteamLibrary" chown lillian:users "''${mount_point}/SteamLibrary" - send_steam_url "addlibraryfolder" "''${mount_point}/SteamLibrary" + # send_steam_url "addlibraryfolder" "''${mount_point}/SteamLibrary" fi } @@ -225,7 +225,7 @@ writeShellApplication # This is a truly gnarly way to ensure steam is ready for commands. # TODO literally anything else sleep 6 - send_steam_url "addlibraryfolder" "''${mount_point}" + # send_steam_url "addlibraryfolder" "''${mount_point}" } case "''${ACTION}" in From f14b1746e73cb7126322a0eb7435a08d1d489573 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:27:33 +0100 Subject: [PATCH 103/199] Give bodies to statements --- pkgs/auto-mount/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index dc9a1e3..393713b 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -192,6 +192,7 @@ writeShellApplication echo "**** Mounted ''${DEVICE} at ''${mount_point} ****" if [ -f "''${mount_point}/libraryfolder.vdf" ]; then + echo " send_steam_url \"addlibraryfolder\" \"''${mount_point}\"" # send_steam_url "addlibraryfolder" "''${mount_point}" else #TODO check permissions are 1000 when creating new SteamLibrary From e84b6527359750a870a71f9a8c7ee1f5e79b975c Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 21 Mar 2024 17:33:23 +0100 Subject: [PATCH 104/199] Add steam to standard pkgs --- nixos/hosts/shodan/configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 136beab..29ecd92 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -68,6 +68,7 @@ rsync rustdesk sbctl + steam toybox udisks util-linux From 84b98ade1bb9c88d63147b55440fd52c5a6d70dd Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Fri, 22 Mar 2024 15:52:42 +0100 Subject: [PATCH 105/199] This is breaking reboot --- nixos/hosts/shodan/configuration.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 29ecd92..8751969 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -54,7 +54,6 @@ #System: alejandra btrfs-progs - coreutils efitools git git-filter-repo @@ -69,7 +68,6 @@ rustdesk sbctl steam - toybox udisks util-linux wget From 38e0679b52b0d637b62c955326e853d35b0bcd24 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sat, 23 Mar 2024 01:16:35 +0100 Subject: [PATCH 106/199] extest from nixkpgs --- nixos/hosts/shodan/configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 8751969..84cbec5 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -55,6 +55,7 @@ alejandra btrfs-progs efitools + extest git git-filter-repo home-manager From 05e0a862e361af10d5ea7f611d9d8c4b10b25598 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sat, 23 Mar 2024 14:42:57 +0100 Subject: [PATCH 107/199] Make downloads a tmpfs --- disko/EDI/default.nix | 8 ++++++++ disko/GLaDOS/default.nix | 8 ++++++++ disko/shodan/default.nix | 8 ++++++++ 3 files changed, 24 insertions(+) diff --git a/disko/EDI/default.nix b/disko/EDI/default.nix index f8cd5dc..9ffa0bf 100644 --- a/disko/EDI/default.nix +++ b/disko/EDI/default.nix @@ -67,5 +67,13 @@ }; }; }; + nodev = { + "/home/lillian/Downloads" = { + fsType = "tmpfs"; + mountOptions = [ + "size=2G" + ]; + }; + }; }; } diff --git a/disko/GLaDOS/default.nix b/disko/GLaDOS/default.nix index 98a0c8a..511b779 100644 --- a/disko/GLaDOS/default.nix +++ b/disko/GLaDOS/default.nix @@ -67,5 +67,13 @@ }; }; }; + nodev = { + "/home/lillian/Downloads" = { + fsType = "tmpfs"; + mountOptions = [ + "size=2G" + ]; + }; + }; }; } diff --git a/disko/shodan/default.nix b/disko/shodan/default.nix index 0ce86bc..b0560b0 100644 --- a/disko/shodan/default.nix +++ b/disko/shodan/default.nix @@ -67,5 +67,13 @@ }; }; }; + nodev = { + "/home/lillian/Downloads" = { + fsType = "tmpfs"; + mountOptions = [ + "size=2G" + ]; + }; + }; }; } From 2bb52e8e32f43a3118ea12783133899f83a2ca2a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sat, 23 Mar 2024 14:45:56 +0100 Subject: [PATCH 108/199] Also add /tmp tmpfs --- disko/EDI/default.nix | 6 ++++++ disko/GLaDOS/default.nix | 6 ++++++ disko/shodan/default.nix | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/disko/EDI/default.nix b/disko/EDI/default.nix index 9ffa0bf..5e5f62e 100644 --- a/disko/EDI/default.nix +++ b/disko/EDI/default.nix @@ -74,6 +74,12 @@ "size=2G" ]; }; + "/tmp" = { + fsType = "tmpfs"; + mountOptions = [ + "size=200M" + ]; + }; }; }; } diff --git a/disko/GLaDOS/default.nix b/disko/GLaDOS/default.nix index 511b779..dc4710e 100644 --- a/disko/GLaDOS/default.nix +++ b/disko/GLaDOS/default.nix @@ -74,6 +74,12 @@ "size=2G" ]; }; + "/tmp" = { + fsType = "tmpfs"; + mountOptions = [ + "size=200M" + ]; + }; }; }; } diff --git a/disko/shodan/default.nix b/disko/shodan/default.nix index b0560b0..9889536 100644 --- a/disko/shodan/default.nix +++ b/disko/shodan/default.nix @@ -74,6 +74,12 @@ "size=2G" ]; }; + "/tmp" = { + fsType = "tmpfs"; + mountOptions = [ + "size=200M" + ]; + }; }; }; } From 3946155a159b1492f904f7284bce170781018d3a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sat, 23 Mar 2024 14:57:52 +0100 Subject: [PATCH 109/199] Add the inputs to requirements --- pkgs/install-nix-no-inhibit/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/install-nix-no-inhibit/default.nix b/pkgs/install-nix-no-inhibit/default.nix index ea7ffeb..ea1a1d1 100644 --- a/pkgs/install-nix-no-inhibit/default.nix +++ b/pkgs/install-nix-no-inhibit/default.nix @@ -1,6 +1,8 @@ { lib, stdenv, + git, + gum, writeShellApplication, }: writeShellApplication From c7ed9539d5ed411e707ccd766af1f003ba9300c6 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 18:44:28 +0100 Subject: [PATCH 110/199] Enable unfree in own packages --- flake.nix | 6 +++++- pkgs/auto-mount/default.nix | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 0f6f07e..155b8e1 100644 --- a/flake.nix +++ b/flake.nix @@ -101,7 +101,11 @@ in { # Your custom packages # Accessible through 'nix build', 'nix shell', etc - packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system}); + packages = forAllSystems (system: + import ./pkgs (import nixpkgs { + inherit system; + config.allowUnfree = true; + })); # Formatter for your nix files, available through 'nix fmt' # Other options beside 'alejandra' include 'nixpkgs-fmt' formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.alejandra); diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 393713b..071338f 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -1,6 +1,7 @@ { lib, stdenv, + system, steam, pkgs, jq, From 7dd79974ff06c0d702ec8bacb2334123eb182e9a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 18:49:15 +0100 Subject: [PATCH 111/199] Don't need these idle inhibits here --- pkgs/install-nix-no-inhibit/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/install-nix-no-inhibit/default.nix b/pkgs/install-nix-no-inhibit/default.nix index ea1a1d1..86cf589 100644 --- a/pkgs/install-nix-no-inhibit/default.nix +++ b/pkgs/install-nix-no-inhibit/default.nix @@ -15,8 +15,8 @@ writeShellApplication # An install script for NixOS installation to /tmp set -e pushd /tmp > /dev/null - systemd-inhibit --what=idle rm -rf ./install-nix - systemd-inhibit --what=idle git clone https://git.lillianviolet.dev/Lillian-Violet/NixOS-Config.git ./install-nix + rm -rf ./install-nix + git clone https://git.lillianviolet.dev/Lillian-Violet/NixOS-Config.git ./install-nix pushd ./install-nix/nixos/hosts > /dev/null echo "Please choose the hostname you are installing to from the following list:" i=1 @@ -38,10 +38,10 @@ writeShellApplication --mode zap_create_mount \ "./disko/''${dir}/default.nix" echo "NixOS Installing..." - systemd-inhibit --what=idle sudo nixos-install --flake .#"''${dir}" + sudo nixos-install --flake .#"''${dir}" popd > /dev/null echo "Cleaning up repository in '/tmp/install-nix'..." - systemd-inhibit --what=idle rm -rf ./install-nix + rm -rf ./install-nix popd > /dev/null echo "NixOS Install Succeeded!" ''; From ad166d7e3ba08704bfe7c9529e825884ec0a0c1e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 19:00:35 +0100 Subject: [PATCH 112/199] Remove element add nheko --- home-manager/desktop/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-manager/desktop/default.nix b/home-manager/desktop/default.nix index e9e49b3..9941781 100644 --- a/home-manager/desktop/default.nix +++ b/home-manager/desktop/default.nix @@ -56,7 +56,7 @@ kate # Chat applications: - element-desktop + nheko signal-desktop webcord-vencord From 4a157a612622e99fbb83cae0f960a65e36824652 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 19:29:21 +0100 Subject: [PATCH 113/199] Remove this unneeded unmount stuff --- nixos/hosts/shodan/auto-mount.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/nixos/hosts/shodan/auto-mount.nix b/nixos/hosts/shodan/auto-mount.nix index 42aa919..664322d 100644 --- a/nixos/hosts/shodan/auto-mount.nix +++ b/nixos/hosts/shodan/auto-mount.nix @@ -9,13 +9,10 @@ services.udev.extraRules = '' KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" - KERNEL=="sd[a-z]|sd[a-z][0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-unmount@%k.service" KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" - KERNEL=="mmcblk0|mmcblk0p[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-unmount@%k.service" KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="add", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-mount@%k.service" KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl stop --no-block external-drive-mount@%k.service" - KERNEL=="nvme0n1p9|nvme0n1p1[0-9]", ACTION=="remove", RUN+="${pkgs.systemd}/bin/systemctl start --no-block external-drive-unmount@%k.service" ''; systemd.services."external-drive-mount@" = { From f3c0a84ccbf3c29716c8e1a8a6b3c18c1e0c3c38 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 20:35:25 +0100 Subject: [PATCH 114/199] add coTURN server --- nixos/hosts/queen/secrets/sops.yaml | 5 +- .../server/package-configs/coturn/default.nix | 63 +++++++++++++++++++ 2 files changed, 66 insertions(+), 2 deletions(-) create mode 100644 nixos/server/package-configs/coturn/default.nix diff --git a/nixos/hosts/queen/secrets/sops.yaml b/nixos/hosts/queen/secrets/sops.yaml index 955740b..87cc66f 100644 --- a/nixos/hosts/queen/secrets/sops.yaml +++ b/nixos/hosts/queen/secrets/sops.yaml @@ -8,6 +8,7 @@ mailpassunhash: ENC[AES256_GCM,data:q/P3nrNLy3hCISDmalw94nzWIFhoCdCTyflj27D2Ltr8 rpcSecret: ENC[AES256_GCM,data:gOuQSY2RI6rnSnG1,iv:xz1ueq4/UOKYBs5r9Tk4jL0+GyX8uo8I8ZymVgIMKLI=,tag:Fr8rWIttLz7X8Pri6FBJBQ==,type:str] wg-private: ENC[AES256_GCM,data:6BEuNqqG//p5UhRmQ4RPEze6jZdvzK4PEXxlbX2ANYIhFpacj0aZnCr9o/A=,iv:tPlwYdV4I5oA8qG+bfVi1Dpbf7xedByantqsmylZXKQ=,tag:k1BqKqlayOWz5QW1XiAjqQ==,type:str] lillian-password: ENC[AES256_GCM,data:tc+Romv2fL+tdqLLmbwqaF4IHrNZ0VEpnECmW/66FW7IUpjHMyS7YP+pmmvDCzM9afIXMxyPFHGNRwiCmxqstiiNeSeLdo6rDw==,iv:sGeu9aNTgdpThv+0Z/nZKIrat1xNgM0t/KTGPaFbsdI=,tag:kZBHF4X0KO9znog61NwU+Q==,type:str] +coturn-auth-secret: ENC[AES256_GCM,data:RYxyATuYIcrGd8h8Gc4CP9ZQ80ekuuwHehnOPYisHejmycgT8a2mWpk+5r3HkFmBNcLDeNlfnhIif5oLHGuHyw==,iv:M2GdNDxP4xpP35FJPTgljbcKpOm6DmEEnIYRItAxDVI=,tag:IiiNXeTi6Yja5PrnKRkhdA==,type:str] sops: kms: [] gcp_kms: [] @@ -23,8 +24,8 @@ sops: KzNBMCtUaS9sU21Xc1JUd1FSR29tSkEKyqaDM/WUWjK2l+ahE6sIFYsQ6Qtkf7yz NWFTzsDZBmm9kpSIjchf+PuBuoRHeEKbEH8jnMlYB3J8boEnUnXMlw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-02-22T11:53:17Z" - mac: ENC[AES256_GCM,data:bOrEW/yQIgJy7Jqfj/95jtXoIeEX2JNTvsnodkrtmtUQoY8Lczb47rTLpS0CM9Gh1Do38dvoNgWY08jXj3PVPO6s7Yy995ZbtgaR8n/G190PZ+p+i7EInv/OAJe/Xw4WcZlLs1XeKPashJmoX7qZi2fVPmu5UpYD1YiCMzZsWkQ=,iv:vjEJCDX8D4relmBJs569d+sklY1bUptWBjJVS7pKB70=,tag:xsQM3cDBkHymS9t9Qyyitg==,type:str] + lastmodified: "2024-03-24T19:25:02Z" + mac: ENC[AES256_GCM,data:Bd2CcyaZk3C5hOFzCo54dKpBduR2fEr6J78pS3bBVvIDMWAL574k2mtYwzixaXPGbUdPMccRhYZcYyhq6x0A+g99kcZYqDV1lRRBUfg6mJ/eEDLcoD3rYd3XgWFzen6PKTsg/rL35EG2EVVSndZKTx4AI0213lcv6BYeb7cZt/0=,iv:UOxGbO07FTcaknwoUMBwlG+AR4EmZeAd3KJkpPwDJL4=,tag:uyoRQVZ3hM6TWsQB3Lin9g==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.8.1 diff --git a/nixos/server/package-configs/coturn/default.nix b/nixos/server/package-configs/coturn/default.nix new file mode 100644 index 0000000..a57148b --- /dev/null +++ b/nixos/server/package-configs/coturn/default.nix @@ -0,0 +1,63 @@ +{ + sops.secrets."coturn-auth-secret".mode = "0440"; + sops.secrets."coturn-auth-secret".owner = config.users.users.coturn.name; + services.coturn = { + enable = true; + lt-cred-mech = true; + use-auth-secret = true; + static-auth-secret-file = config.sops.secrets."coturn-auth-secret".path; + realm = "turn.gladtherescake.eu"; + relay-ips = [ + "62.171.160.195" + ]; + no-tcp-relay = true; + extraConfig = " + cipher-list=\"HIGH\" + no-loopback-peers + no-multicast-peers + "; + secure-stun = true; + cert = "/var/lib/acme/turn.gladtherescake.eu/fullchain.pem"; + pkey = "/var/lib/acme/turn.gladtherescake.eu/key.pem"; + min-port = 49152; + max-port = 49999; + }; + + # Open ports in the firewall. + networking.firewall = { + enable = true; + allowPing = false; + allowedTCPPorts = [ + 5349 # STUN tls + 5350 # STUN tls alt + 80 # http + 443 # https + ]; + allowedUDPPortRanges = [ + { + from = 49152; + to = 49999; + } # TURN relay + ]; + }; + + # setup certs + services.nginx = { + enable = true; + virtualHosts = { + "turn.gladtherescake.eu" = { + forceSSL = true; + enableACME = true; + }; + }; + }; + + # share certs with coturn and restart on renewal + security.acme.certs = { + "turn.gladtherescake.eu" = { + group = "turnserver"; + allowKeysForGroup = true; + postRun = "systemctl reload nginx.service; systemctl restart coturn.service"; + }; + }; +} From e595ac3931657b38c586d0a9ed4a3b0ccc30c2f2 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 21:03:17 +0100 Subject: [PATCH 115/199] Enable coTURN and fix the bugs present --- nixos/hosts/queen/configuration.nix | 21 ++++++++++++--- .../server/package-configs/coturn/default.nix | 26 +++++-------------- nixos/server/package-configs/default.nix | 1 + 3 files changed, 25 insertions(+), 23 deletions(-) diff --git a/nixos/hosts/queen/configuration.nix b/nixos/hosts/queen/configuration.nix index 2fb5185..b9b6dcc 100644 --- a/nixos/hosts/queen/configuration.nix +++ b/nixos/hosts/queen/configuration.nix @@ -104,9 +104,24 @@ # Contabo ipv6 nameservers: "2a02:c207::1:53" "2a02:c207::2:53" - networking.firewall.enable = true; - - networking.firewall.allowedTCPPorts = [22 80 443]; + # Open ports in the firewall. + networking.firewall = { + enable = true; + allowPing = false; + allowedTCPPorts = [ + 22 # SSH + 5349 # STUN tls + 5350 # STUN tls alt + 80 # http + 443 # https + ]; + allowedUDPPortRanges = [ + { + from = 49152; + to = 49999; + } # TURN relay + ]; + }; # networking.useNetworkd = true; diff --git a/nixos/server/package-configs/coturn/default.nix b/nixos/server/package-configs/coturn/default.nix index a57148b..e37c03d 100644 --- a/nixos/server/package-configs/coturn/default.nix +++ b/nixos/server/package-configs/coturn/default.nix @@ -1,6 +1,11 @@ { + config, + pkgs, + ... +}: { sops.secrets."coturn-auth-secret".mode = "0440"; - sops.secrets."coturn-auth-secret".owner = config.users.users.coturn.name; + sops.secrets."coturn-auth-secret".owner = config.users.users.turnserver.name; + users.users.nginx.extraGroups = ["turnserver"]; services.coturn = { enable = true; lt-cred-mech = true; @@ -23,24 +28,6 @@ max-port = 49999; }; - # Open ports in the firewall. - networking.firewall = { - enable = true; - allowPing = false; - allowedTCPPorts = [ - 5349 # STUN tls - 5350 # STUN tls alt - 80 # http - 443 # https - ]; - allowedUDPPortRanges = [ - { - from = 49152; - to = 49999; - } # TURN relay - ]; - }; - # setup certs services.nginx = { enable = true; @@ -56,7 +43,6 @@ security.acme.certs = { "turn.gladtherescake.eu" = { group = "turnserver"; - allowKeysForGroup = true; postRun = "systemctl reload nginx.service; systemctl restart coturn.service"; }; }; diff --git a/nixos/server/package-configs/default.nix b/nixos/server/package-configs/default.nix index 3b2ddc4..b0104c5 100644 --- a/nixos/server/package-configs/default.nix +++ b/nixos/server/package-configs/default.nix @@ -14,5 +14,6 @@ ./nextcloud ./postgres ./roundcube + ./coturn ]; } From ce1aa98f43cdba08f479824e345589fa9d3ae13f Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 21:31:50 +0100 Subject: [PATCH 116/199] Up the tmpfs space --- disko/EDI/default.nix | 2 +- disko/GLaDOS/default.nix | 2 +- disko/shodan/default.nix | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/disko/EDI/default.nix b/disko/EDI/default.nix index 5e5f62e..ec5969b 100644 --- a/disko/EDI/default.nix +++ b/disko/EDI/default.nix @@ -77,7 +77,7 @@ "/tmp" = { fsType = "tmpfs"; mountOptions = [ - "size=200M" + "size=4G" ]; }; }; diff --git a/disko/GLaDOS/default.nix b/disko/GLaDOS/default.nix index dc4710e..f59a834 100644 --- a/disko/GLaDOS/default.nix +++ b/disko/GLaDOS/default.nix @@ -77,7 +77,7 @@ "/tmp" = { fsType = "tmpfs"; mountOptions = [ - "size=200M" + "size=4G" ]; }; }; diff --git a/disko/shodan/default.nix b/disko/shodan/default.nix index 9889536..eace8ce 100644 --- a/disko/shodan/default.nix +++ b/disko/shodan/default.nix @@ -77,7 +77,7 @@ "/tmp" = { fsType = "tmpfs"; mountOptions = [ - "size=200M" + "size=4G" ]; }; }; From 0043166e05bcc93d3a622498a13c84ac757f1fd9 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 21:35:32 +0100 Subject: [PATCH 117/199] Change conduit to conduwuit for more better --- flake.lock | 18 +++++++++--------- flake.nix | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/flake.lock b/flake.lock index 21c76c4..de7d79d 100644 --- a/flake.lock +++ b/flake.lock @@ -52,17 +52,17 @@ ] }, "locked": { - "lastModified": 1710785672, - "narHash": "sha256-tEP/amp09fSKeTBrcHWAYr/tQ0g2ZxJQlnCiZDi6qtY=", - "owner": "famedly", - "repo": "conduit", - "rev": "81bc1fc4e324c4798dc7b7e3cec94495a94455e0", - "type": "gitlab" + "lastModified": 1711172967, + "narHash": "sha256-HBkYzSfFM0oMnRSjquI1CJ7a4jtIv9eRbAeJZDE8H3M=", + "owner": "girlbossceo", + "repo": "conduwuit", + "rev": "101cb34f9a1b94b91717af3581f35386f20d4601", + "type": "github" }, "original": { - "owner": "famedly", - "repo": "conduit", - "type": "gitlab" + "owner": "girlbossceo", + "repo": "conduwuit", + "type": "github" } }, "crane": { diff --git a/flake.nix b/flake.nix index 155b8e1..eef5331 100644 --- a/flake.nix +++ b/flake.nix @@ -19,7 +19,7 @@ # Conduit fork without all the fuss and drama conduit = { - url = "gitlab:famedly/conduit"; + url = "github:girlbossceo/conduwuit"; inputs.nixpkgs.follows = "nixpkgs"; }; From 8598679e057852556ab417c621455faae33dcff7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 21:50:12 +0100 Subject: [PATCH 118/199] Let's try rocksdb since sqlite won't work? --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 74dc5a8..4e3778c 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -40,7 +40,7 @@ in { settings.global = { inherit server_name; - database_backend = "sqlite"; + # database_backend = "rocksdb"; allow_registration = false; }; }; From 045e950a893aa3c974d7c2cc30495fa196ac090b Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 21:50:50 +0100 Subject: [PATCH 119/199] What that comment said, forgot to stage --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 4e3778c..34294cf 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -40,7 +40,7 @@ in { settings.global = { inherit server_name; - # database_backend = "rocksdb"; + database_backend = "rocksdb"; allow_registration = false; }; }; From 1976f74686e7933c9d3978a506dbd4b9a61f5782 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 21:52:26 +0100 Subject: [PATCH 120/199] Default selection? --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 34294cf..4e3778c 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -40,7 +40,7 @@ in { settings.global = { inherit server_name; - database_backend = "rocksdb"; + # database_backend = "rocksdb"; allow_registration = false; }; }; From c136f54e970375958c9e37151d43d3a20f16a1f3 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 21:59:25 +0100 Subject: [PATCH 121/199] Why won't sqlite work? --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 4e3778c..74dc5a8 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -40,7 +40,7 @@ in { settings.global = { inherit server_name; - # database_backend = "rocksdb"; + database_backend = "sqlite"; allow_registration = false; }; }; From 838c157c87c559d16d463dc99c21301a6f962554 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 22:02:19 +0100 Subject: [PATCH 122/199] I would like rocksdb --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 74dc5a8..34294cf 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -40,7 +40,7 @@ in { settings.global = { inherit server_name; - database_backend = "sqlite"; + database_backend = "rocksdb"; allow_registration = false; }; }; From 3d2e2ef7e12e8e263d084b6e04cc6b0e48871c91 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 22:11:33 +0100 Subject: [PATCH 123/199] Reset the server, allow registration again for a sec --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 34294cf..8932e7e 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -41,7 +41,7 @@ in { settings.global = { inherit server_name; database_backend = "rocksdb"; - allow_registration = false; + allow_registration = true; }; }; From 85988c1b846c8db475dc8a6b3260f2afb1743e8a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 22:13:28 +0100 Subject: [PATCH 124/199] Yes I am sure --- nixos/server/package-configs/conduit/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 8932e7e..9c4317a 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -32,6 +32,9 @@ in { # Configure Conduit itself services.matrix-conduit = { + settings = { + yes_i_am_very_very_sure_i_want_an_open_registration_server_prone_to_abuse = true; + }; enable = true; # This causes NixOS to use the flake defined in this repository instead of From 2dc4f0a5fde4f3483788ad7486731708eef99b25 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 22:15:39 +0100 Subject: [PATCH 125/199] OK I'll set a not so very secret token --- nixos/server/package-configs/conduit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 9c4317a..6532999 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -33,7 +33,7 @@ in { # Configure Conduit itself services.matrix-conduit = { settings = { - yes_i_am_very_very_sure_i_want_an_open_registration_server_prone_to_abuse = true; + registration_token = "It's me, Lillian Violet"; }; enable = true; From 93c390118b2e4924736e2ef9705a3ba9df979e5a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 22:17:45 +0100 Subject: [PATCH 126/199] I guess it goes here --- nixos/server/package-configs/conduit/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 6532999..1a5e463 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -32,9 +32,6 @@ in { # Configure Conduit itself services.matrix-conduit = { - settings = { - registration_token = "It's me, Lillian Violet"; - }; enable = true; # This causes NixOS to use the flake defined in this repository instead of @@ -45,6 +42,7 @@ in { inherit server_name; database_backend = "rocksdb"; allow_registration = true; + registration_token = "It's me, Lillian Violet"; }; }; From 4e04833096f0d85296dbb1f1eccf20c21ed93888 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 22:22:00 +0100 Subject: [PATCH 127/199] Registrations are closed! --- nixos/server/package-configs/conduit/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 1a5e463..34294cf 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -41,8 +41,7 @@ in { settings.global = { inherit server_name; database_backend = "rocksdb"; - allow_registration = true; - registration_token = "It's me, Lillian Violet"; + allow_registration = false; }; }; From 4759a56a1ced692e6986564afbe055691fda747d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 22:53:32 +0100 Subject: [PATCH 128/199] Let's see if turn server works eh --- nixos/server/package-configs/conduit/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/server/package-configs/conduit/default.nix b/nixos/server/package-configs/conduit/default.nix index 34294cf..b0d8430 100644 --- a/nixos/server/package-configs/conduit/default.nix +++ b/nixos/server/package-configs/conduit/default.nix @@ -42,6 +42,8 @@ in { inherit server_name; database_backend = "rocksdb"; allow_registration = false; + turn_uris = ["turn:turn.gladtherescake.eu.url?transport=udp" "turn:turn.gladtherescake.eu?transport=tcp"]; + turn_secret = "cPKWEn4Fo5TAJoE7iX3xeVOaMVE4afeRN1iRGWYfbkWbkaZMxTpnmazHyH6c6yXT"; }; }; From 04bf4564d81d8307acffaa4825017db18cb24f98 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 24 Mar 2024 23:30:33 +0100 Subject: [PATCH 129/199] update flake lock --- flake.lock | 72 +++++++++++++++++++++++++++--------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/flake.lock b/flake.lock index de7d79d..c086c19 100644 --- a/flake.lock +++ b/flake.lock @@ -137,11 +137,11 @@ ] }, "locked": { - "lastModified": 1710906792, - "narHash": "sha256-kFzpfZcInLhBFWHy452NlvFuzNr0BDEkz3w9Sgg2ypo=", + "lastModified": 1711261295, + "narHash": "sha256-5DUNQl9BSmLxgGLbF05G7hi/UTk9DyZq8AuEszhQA7Q=", "owner": "nix-community", "repo": "disko", - "rev": "e9875b969086a53dff5ec4677575ad3156fc875d", + "rev": "5d2d3e421ade554b19b4dbb0d11a04023378a330", "type": "github" }, "original": { @@ -390,11 +390,11 @@ ] }, "locked": { - "lastModified": 1710820906, - "narHash": "sha256-2bNMraoRB4pdw/HtxgYTFeMhEekBZeQ53/a8xkqpbZc=", + "lastModified": 1711133180, + "narHash": "sha256-WJOahf+6115+GMl3wUfURu8fszuNeJLv9qAWFQl3Vmo=", "owner": "nix-community", "repo": "home-manager", - "rev": "022464438a85450abb23d93b91aa82e0addd71fb", + "rev": "1c2c5e4cabba4c43504ef0f8cc3f3dfa284e2dbb", "type": "github" }, "original": { @@ -410,11 +410,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1710915975, - "narHash": "sha256-yOc0AD6ba7mbialNciZGzuSQLMo4CopoZGEfcUugA4I=", + "lastModified": 1711231487, + "narHash": "sha256-dRdFjStMA7GeuD/V4vzKblzuHwxMPgzEboRleVdZlUM=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "179d73fbe14c5bdb835d10bcc1c783466112bfa6", + "rev": "1171169117f63f1de9ef2ea36efd8dcf377c6d5a", "type": "github" }, "original": { @@ -527,11 +527,11 @@ ] }, "locked": { - "lastModified": 1710722910, - "narHash": "sha256-P5p9+WQFuABoBXBKEK1ZYu8mD6q8j/cQwZ9OYb0oh2E=", + "lastModified": 1711108213, + "narHash": "sha256-Q8cwpA2LQOInqeXVckrfFlbzHB8HOWrYntuOxqn3A3g=", "owner": "nix-community", "repo": "nixos-generators", - "rev": "e63df01c798b99a76dc2ec25481be7dd25cd1610", + "rev": "417a857dfb824e60930881a254dd67d6796f5884", "type": "github" }, "original": { @@ -542,11 +542,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1710783728, - "narHash": "sha256-eIsfu3c9JUBgm3cURSKTXLEI9Dlk1azo+MWKZVqrmkc=", + "lastModified": 1711274671, + "narHash": "sha256-19KQXya5VERUXOdeEJJN+zOqtvuE6MV3qTk9Gr4J9Uo=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "1e679b9a9970780cd5d4dfe755a74a8f96d33388", + "rev": "7559df1e4af972d5f1de87975b5ef6a8d7559db2", "type": "github" }, "original": { @@ -606,11 +606,11 @@ }, "nixpkgs-stable_3": { "locked": { - "lastModified": 1710628718, - "narHash": "sha256-y+l3eH53UlENaYa1lmnCBHusZb1kxBEFd2/c7lDsGpw=", + "lastModified": 1711233294, + "narHash": "sha256-eEu5y4J145BYDw9o/YEmeJyqh8blgnZwuz9k234zuWc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6dc11d9859d6a18ab0c5e5829a5b8e4810658de3", + "rev": "ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68", "type": "github" }, "original": { @@ -622,11 +622,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1710806803, - "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", + "lastModified": 1711163522, + "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", + "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", "type": "github" }, "original": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1710889954, - "narHash": "sha256-Pr6F5Pmd7JnNEMHHmspZ0qVqIBVxyZ13ik1pJtm2QXk=", + "lastModified": 1711231723, + "narHash": "sha256-dARJQ8AJOv6U+sdRePkbcVyVbXJTi1tReCrkkOeusiA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7872526e9c5332274ea5932a0c3270d6e4724f3b", + "rev": "e1d501922fd7351da4200e1275dfcf5faaad1220", "type": "github" }, "original": { @@ -686,11 +686,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1710806803, - "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", + "lastModified": 1711163522, + "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", + "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", "type": "github" }, "original": { @@ -717,11 +717,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1710534455, - "narHash": "sha256-huQT4Xs0y4EeFKn2BTBVYgEwJSv8SDlm82uWgMnCMmI=", + "lastModified": 1711200738, + "narHash": "sha256-dkJmk/ET/tRV4007O6kU101UEg1svUwiyk/zEEX9Tdg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9af9c1c87ed3e3ed271934cb896e0cdd33dae212", + "rev": "20bc93ca7b2158ebc99b8cef987a2173a81cde35", "type": "github" }, "original": { @@ -767,11 +767,11 @@ ] }, "locked": { - "lastModified": 1709982472, - "narHash": "sha256-cMPHIV7yWbve+nwiQDhVt7BBkxrGTLzSTAslv7u6HZo=", + "lastModified": 1711295162, + "narHash": "sha256-gPTTYKvdnmaLcgOSpqtKHIf8J60J3Z4jAqXTwluxxUk=", "owner": "pjones", "repo": "plasma-manager", - "rev": "26acf8f5880ae7d6e5de4ca953c8ad161b7903eb", + "rev": "8a032af55ed686ab21e60530080462a1438812b9", "type": "github" }, "original": { @@ -901,11 +901,11 @@ "nixpkgs-stable": "nixpkgs-stable_3" }, "locked": { - "lastModified": 1710644594, - "narHash": "sha256-RquCuzxfy4Nr8DPbdp3D/AsbYep21JgQzG8aMH9jJ4A=", + "lastModified": 1711249319, + "narHash": "sha256-N+Pp3/8H+rd7cO71VNV/ovV/Kwt+XNeUHNhsmyTabdM=", "owner": "Mic92", "repo": "sops-nix", - "rev": "83b68a0e8c94b72cdd0a6e547a14ca7eb1c03616", + "rev": "405987a66cce9a4a82f321f11b205982a7127c88", "type": "github" }, "original": { From bd0da21ce36999ba1e4a7fae84c05e33f9170b30 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 00:10:22 +0100 Subject: [PATCH 130/199] Let's let tmp be done by nixos itself --- disko/EDI/default.nix | 6 ------ disko/GLaDOS/default.nix | 6 ------ disko/shodan/default.nix | 6 ------ 3 files changed, 18 deletions(-) diff --git a/disko/EDI/default.nix b/disko/EDI/default.nix index ec5969b..1c2ab31 100644 --- a/disko/EDI/default.nix +++ b/disko/EDI/default.nix @@ -69,12 +69,6 @@ }; nodev = { "/home/lillian/Downloads" = { - fsType = "tmpfs"; - mountOptions = [ - "size=2G" - ]; - }; - "/tmp" = { fsType = "tmpfs"; mountOptions = [ "size=4G" diff --git a/disko/GLaDOS/default.nix b/disko/GLaDOS/default.nix index f59a834..53ffd96 100644 --- a/disko/GLaDOS/default.nix +++ b/disko/GLaDOS/default.nix @@ -69,12 +69,6 @@ }; nodev = { "/home/lillian/Downloads" = { - fsType = "tmpfs"; - mountOptions = [ - "size=2G" - ]; - }; - "/tmp" = { fsType = "tmpfs"; mountOptions = [ "size=4G" diff --git a/disko/shodan/default.nix b/disko/shodan/default.nix index eace8ce..58e1e3d 100644 --- a/disko/shodan/default.nix +++ b/disko/shodan/default.nix @@ -69,12 +69,6 @@ }; nodev = { "/home/lillian/Downloads" = { - fsType = "tmpfs"; - mountOptions = [ - "size=2G" - ]; - }; - "/tmp" = { fsType = "tmpfs"; mountOptions = [ "size=4G" From 4a34a1147414a71049b2f39c7cce002f8288d9c8 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 18:28:07 +0100 Subject: [PATCH 131/199] Let's try forcing patched steam --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 84cbec5..56f7231 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -121,7 +121,7 @@ enable = true; remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server - package = pkgs.steam.override { + package = lib.mkForce pkgs.steam.override { extraProfile = ''export LD_PRELOAD=${pkgs.extest}/lib/libextest.so:$LD_PRELOAD''; }; }; From 8e760df6c8a5392e304af679b656853009a6be13 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 18:34:33 +0100 Subject: [PATCH 132/199] That didn't work, force programs.steam instead --- nixos/hosts/shodan/configuration.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 56f7231..d7bcda3 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -117,11 +117,11 @@ jovian.hardware.has.amd.gpu = true; - programs.steam = { + programs.steam = lib.mkForce { enable = true; remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server - package = lib.mkForce pkgs.steam.override { + package = pkgs.steam.override { extraProfile = ''export LD_PRELOAD=${pkgs.extest}/lib/libextest.so:$LD_PRELOAD''; }; }; From 08d443f5c31575657e2673a9a1bc0718ba2f0550 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 18:51:21 +0100 Subject: [PATCH 133/199] Let's try a global overlay --- overlays/default.nix | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/overlays/default.nix b/overlays/default.nix index 54f7d69..c63d4fc 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -1,5 +1,14 @@ # This file defines overlays {inputs, ...}: { + # This one contains whatever you want to overlay + # You can change versions, add patches, set compilation flags, anything really. + # https://nixos.wiki/wiki/Overlays + modifications = final: prev: { + steam = prev.steam.override { + extraProfile = ''export LD_PRELOAD=${inputs.extest}/lib/libextest.so:$LD_PRELOAD''; + }; + }; + # This one brings our custom packages from the 'pkgs' directory additions = final: _prev: import ../pkgs { @@ -7,15 +16,6 @@ pkgs = final; }; - # This one contains whatever you want to overlay - # You can change versions, add patches, set compilation flags, anything really. - # https://nixos.wiki/wiki/Overlays - modifications = final: prev: { - # example = prev.example.overrideAttrs (oldAttrs: rec { - # ... - # }); - }; - # When applied, the stable nixpkgs set (declared in the flake inputs) will # be accessible through 'pkgs.stable' pkg-sets = ( From a56395135fc883f4bc39f1bc79c48289a6c7c464 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 19:05:33 +0100 Subject: [PATCH 134/199] Will it work without steam? --- pkgs/auto-mount/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 071338f..a324850 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -2,7 +2,6 @@ lib, stdenv, system, - steam, pkgs, jq, coreutils, @@ -17,7 +16,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox steam]; + runtimeInputs = [jq coreutils udisks util-linux toybox]; text = '' set -euo pipefail From 7260d0fb5ff243cd09c6d3f5b69680c5521dfaef Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 19:09:39 +0100 Subject: [PATCH 135/199] Let's try this to use correct steam in auto-mount --- pkgs/auto-mount/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index a324850..ba26487 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -16,7 +16,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox]; + runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steam]; text = '' set -euo pipefail @@ -76,7 +76,7 @@ writeShellApplication # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" >> /home/lillian/steam.txt - systemd-run -M 1000@ --user --collect --wait sh -c "${steam}/bin/steam steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steam}/bin/steam steam://''${command}/''${encoded@Q}" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" fi From af60be340166ee38794f8d4cdd730db35a62664a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 19:33:58 +0100 Subject: [PATCH 136/199] Add lillian to input group --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index d7bcda3..341f55a 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -195,7 +195,7 @@ enable = true; }; - users.users.lillian.extraGroups = ["decky" "tss"]; + users.users.lillian.extraGroups = ["decky" "tss" "input"]; # Enable completion of system packages by zsh environment.pathsToLink = ["/share/zsh"]; From b07af0ef60b4328942834ed191e79f2b669a6369 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 25 Mar 2024 19:42:19 +0100 Subject: [PATCH 137/199] Let's try and LD preload in auto-mount too --- pkgs/auto-mount/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index ba26487..37a8ef2 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -16,7 +16,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steam]; + runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steam pkgs.extest]; text = '' set -euo pipefail @@ -76,7 +76,7 @@ writeShellApplication # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" >> /home/lillian/steam.txt - systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steam}/bin/steam steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "export LD_PRELOAD=${pkgs.extest}/lib/libextest.so:$LD_PRELOAD ${pkgs.steam}/bin/steam steam://''${command}/''${encoded@Q}" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" fi From 82dfea8f7c3dee00feb18e2e3689db5377e4d8fc Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 10:18:36 +0100 Subject: [PATCH 138/199] update flake lock --- flake.lock | 66 +++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/flake.lock b/flake.lock index c086c19..3e9cd2c 100644 --- a/flake.lock +++ b/flake.lock @@ -117,11 +117,11 @@ ] }, "locked": { - "lastModified": 1710003968, - "narHash": "sha256-g8+K+mLiNG5uch35Oy9oDQBAmGSkCcqrd0Jjme7xiG0=", + "lastModified": 1711299236, + "narHash": "sha256-6/JsyozOMKN8LUGqWMopKTSiK8N79T8Q+hcxu2KkTXg=", "owner": "ipetkov", "repo": "crane", - "rev": "10484f86201bb94bd61ecc5335b1496794fedb78", + "rev": "880573f80d09e18a11713f402b9e6172a085449f", "type": "github" }, "original": { @@ -370,11 +370,11 @@ ] }, "locked": { - "lastModified": 1703887061, - "narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=", + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", "owner": "hercules-ci", "repo": "gitignore.nix", - "rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", "type": "github" }, "original": { @@ -434,11 +434,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1710837180, - "narHash": "sha256-WVkLclGrUliLJUl+XaJplo09VdxyqHxZtkEmmDW2QYY=", + "lastModified": 1711442573, + "narHash": "sha256-/A3YzcY5erYOPojp5Ffwgxv4X5MTnRiWwuaXfgXbK2g=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "ded8d23709f94aedb1407bee9e26581f258e9e3a", + "rev": "df7ac26bd24fac8baa94d60a02c3e0f0d4d16368", "type": "github" }, "original": { @@ -506,11 +506,11 @@ }, "nixlib": { "locked": { - "lastModified": 1710636348, - "narHash": "sha256-/kB+ZWSdkZjbZ0FTqm0u84sf2jFS+30ysaEajmBjtoY=", + "lastModified": 1711241261, + "narHash": "sha256-knrTvpl81yGFHIpm1SsLDApe0thFkw1cl3ISAMPmP/0=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "fa827dda806c5aa98f454da4c567991ab8ce422c", + "rev": "b2a1eeef8c185f6bd27432b053ff09d773244cbc", "type": "github" }, "original": { @@ -527,11 +527,11 @@ ] }, "locked": { - "lastModified": 1711108213, - "narHash": "sha256-Q8cwpA2LQOInqeXVckrfFlbzHB8HOWrYntuOxqn3A3g=", + "lastModified": 1711375484, + "narHash": "sha256-+d4HqehyQvuHUKR8Nv9HGGd/SP5wjg3MA/hEYJBWQq0=", "owner": "nix-community", "repo": "nixos-generators", - "rev": "417a857dfb824e60930881a254dd67d6796f5884", + "rev": "2b3720c7af2271be8cee713cd2f69c5127b0a8e4", "type": "github" }, "original": { @@ -542,11 +542,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1711274671, - "narHash": "sha256-19KQXya5VERUXOdeEJJN+zOqtvuE6MV3qTk9Gr4J9Uo=", + "lastModified": 1711352745, + "narHash": "sha256-luvqik+i3HTvCbXQZgB6uggvEcxI9uae0nmrgtXJ17U=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "7559df1e4af972d5f1de87975b5ef6a8d7559db2", + "rev": "9a763a7acc4cfbb8603bb0231fec3eda864f81c0", "type": "github" }, "original": { @@ -590,11 +590,11 @@ }, "nixpkgs-stable_2": { "locked": { - "lastModified": 1704874635, - "narHash": "sha256-YWuCrtsty5vVZvu+7BchAxmcYzTMfolSPP5io8+WYCg=", + "lastModified": 1710695816, + "narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3dc440faeee9e889fe2d1b4d25ad0f430d449356", + "rev": "614b4613980a522ba49f0d194531beddbb7220d3", "type": "github" }, "original": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1711231723, - "narHash": "sha256-dARJQ8AJOv6U+sdRePkbcVyVbXJTi1tReCrkkOeusiA=", + "lastModified": 1711370797, + "narHash": "sha256-2xu0jVSjuKhN97dqc4bVtvEH52Rwh6+uyI1XCnzoUyI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e1d501922fd7351da4200e1275dfcf5faaad1220", + "rev": "c726225724e681b3626acc941c6f95d2b0602087", "type": "github" }, "original": { @@ -670,11 +670,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1710672219, - "narHash": "sha256-Bp3Jsq1Jn8q4EesBlcOVNwnEipNpzYs73kvR3+3EUC4=", + "lastModified": 1711297276, + "narHash": "sha256-KtHBr73Z729krfueBV6pUsEyq/4vILGP77DPmrKOTrI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f471be9644f3ab2f3cb868de1787ab70a537b0e7", + "rev": "3d41d1087707826b3a90685ab69147f8dc8145d5", "type": "github" }, "original": { @@ -798,11 +798,11 @@ "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { - "lastModified": 1708018599, - "narHash": "sha256-M+Ng6+SePmA8g06CmUZWi1AjG2tFBX9WCXElBHEKnyM=", + "lastModified": 1710923068, + "narHash": "sha256-6hOpUiuxuwpXXc/xfJsBUJeqqgGI+JMJuLo45aG3cKc=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "5df5a70ad7575f6601d91f0efec95dd9bc619431", + "rev": "e611897ddfdde3ed3eaac4758635d7177ff78673", "type": "github" }, "original": { @@ -860,11 +860,11 @@ ] }, "locked": { - "lastModified": 1710641527, - "narHash": "sha256-R9JZEevtSyg7++LEryYJRrfyEe45azJxmu2k9VezEW0=", + "lastModified": 1711246447, + "narHash": "sha256-g9TOluObcOEKewFo2fR4cn51Y/jSKhRRo4QZckHLop0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "50db54295d3922a3b7a40d580b84d75150b36c34", + "rev": "dcc802a6ec4e9cc6a1c8c393327f0c42666f22e4", "type": "github" }, "original": { From 45fc46cb9f4bdae23180c8f3fa420e3dabce0674 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 13:48:55 +0100 Subject: [PATCH 139/199] fcast --- pkgs/fcast/default.nix | 202 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 202 insertions(+) create mode 100644 pkgs/fcast/default.nix diff --git a/pkgs/fcast/default.nix b/pkgs/fcast/default.nix new file mode 100644 index 0000000..3919a72 --- /dev/null +++ b/pkgs/fcast/default.nix @@ -0,0 +1,202 @@ +{ + lib, + buildNpmPackage, + cargo, + copyDesktopItems, + dbus, + electron_28, + fetchFromGitLab, + glib, + gnome, + gtk3, + jq, + libsecret, + makeDesktopItem, + makeWrapper, + moreutils, + napi-rs-cli, + nodejs_18, + patchutils_0_4_2, + pkg-config, + python3, + runCommand, + rustc, + rustPlatform, +}: let + description = "A secure and free password manager for all of your devices"; + icon = "bitwarden"; + electron = electron_28; +in + buildNpmPackage rec { + pname = "bitwarden-desktop"; + version = "2024.3.0"; + + src = fetchFromGitLab { + owner = "videostreaming"; + repo = "fcast"; + rev = "b13d0f7e8150c279d377a78f89d338b7fc0f5539"; + hash = "sha256-XEZB95GnfSy/wtTWpF8KlUQwyephUZmSLtbOwbcvd7g="; + }; + + patches = [ + ./electron-builder-package-lock.patch + ]; + + # The nested package-lock.json from upstream is out-of-date, so copy the + # lock metadata from the root package-lock.json. + postPatch = '' + cat {,apps/desktop/src/}package-lock.json \ + | ${lib.getExe jq} -s ' + .[1].packages."".dependencies.argon2 = .[0].packages."".dependencies.argon2 + | .[0].packages."" = .[1].packages."" + | .[1].packages = .[0].packages + | .[1] + ' \ + | ${moreutils}/bin/sponge apps/desktop/src/package-lock.json + ''; + + nodejs = nodejs_18; + + makeCacheWritable = true; + npmFlags = ["--legacy-peer-deps"]; + npmWorkspace = "apps/desktop"; + npmDepsHash = "sha256-EpZXA+GkmHl5eqwIPTGHJZqrpr6k8gXneJG+GXumlkc="; + + cargoDeps = rustPlatform.fetchCargoTarball { + name = "${pname}-${version}"; + inherit src; + patches = + map + ( + patch: + runCommand + (builtins.baseNameOf patch) + {nativeBuildInputs = [patchutils_0_4_2];} + '' + < ${patch} filterdiff -p1 --include=${lib.escapeShellArg cargoRoot}'/*' > $out + '' + ) + patches; + patchFlags = ["-p4"]; + sourceRoot = "${src.name}/${cargoRoot}"; + hash = "sha256-qAqEFlUzT28fw6kLB8d7U8yXWevAU+q03zjN2xWsGyI="; + }; + cargoRoot = "apps/desktop/desktop_native"; + + env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; + + nativeBuildInputs = [ + cargo + copyDesktopItems + jq + makeWrapper + moreutils + napi-rs-cli + pkg-config + python3 + rustc + rustPlatform.cargoCheckHook + rustPlatform.cargoSetupHook + ]; + + buildInputs = [ + glib + gtk3 + libsecret + ]; + + preBuild = '' + if [[ $(jq --raw-output '.devDependencies.electron' < package.json | grep -E --only-matching '^[0-9]+') != ${lib.escapeShellArg (lib.versions.major electron.version)} ]]; then + echo 'ERROR: electron version mismatch' + exit 1 + fi + ''; + + postBuild = '' + pushd apps/desktop + + # desktop_native/index.js loads a file of that name regarldess of the libc being used + mv desktop_native/desktop_native.* desktop_native/desktop_native.linux-x64-musl.node + + npm exec electron-builder -- \ + --dir \ + -c.electronDist=${electron}/libexec/electron \ + -c.electronVersion=${electron.version} + + popd + ''; + + doCheck = true; + + nativeCheckInputs = [ + dbus + (gnome.gnome-keyring.override {useWrappedDaemon = false;}) + ]; + + checkFlags = [ + "--skip=password::password::tests::test" + ]; + + checkPhase = '' + runHook preCheck + + pushd ${cargoRoot} + export HOME=$(mktemp -d) + export -f cargoCheckHook runHook _eval _callImplicitHook + export cargoCheckType=release + dbus-run-session \ + --config-file=${dbus}/share/dbus-1/session.conf \ + -- bash -e -c cargoCheckHook + popd + + runHook postCheck + ''; + + installPhase = '' + runHook preInstall + + mkdir $out + + pushd apps/desktop/dist/linux-unpacked + mkdir -p $out/opt/Bitwarden + cp -r locales resources{,.pak} $out/opt/Bitwarden + popd + + makeWrapper '${electron}/bin/electron' "$out/bin/bitwarden" \ + --add-flags $out/opt/Bitwarden/resources/app.asar \ + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \ + --set-default ELECTRON_IS_DEV 0 \ + --inherit-argv0 + + pushd apps/desktop/resources/icons + for icon in *.png; do + dir=$out/share/icons/hicolor/"''${icon%.png}"/apps + mkdir -p "$dir" + cp "$icon" "$dir"/${icon}.png + done + popd + + runHook postInstall + ''; + + desktopItems = [ + (makeDesktopItem { + name = "bitwarden"; + exec = "bitwarden %U"; + inherit icon; + comment = description; + desktopName = "Bitwarden"; + categories = ["Utility"]; + }) + ]; + + meta = { + changelog = "https://github.com/bitwarden/clients/releases/tag/${src.rev}"; + inherit description; + homepage = "https://bitwarden.com"; + license = lib.licenses.gpl3; + maintainers = with lib.maintainers; [amarshall kiwi]; + platforms = ["x86_64-linux"]; + mainProgram = "bitwarden"; + }; + } From b5be1009cf14167edb82a2bb2cb596de3f02e142 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 14:13:35 +0100 Subject: [PATCH 140/199] added grafana to queen --- .../package-configs/dashboard/default.nix | 14 +++++++++++ .../dashboard/grafana/default.nix | 25 +++++++++++++++++++ nixos/server/package-configs/default.nix | 1 + 3 files changed, 40 insertions(+) create mode 100644 nixos/server/package-configs/dashboard/default.nix create mode 100644 nixos/server/package-configs/dashboard/grafana/default.nix diff --git a/nixos/server/package-configs/dashboard/default.nix b/nixos/server/package-configs/dashboard/default.nix new file mode 100644 index 0000000..71b377b --- /dev/null +++ b/nixos/server/package-configs/dashboard/default.nix @@ -0,0 +1,14 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: { + imports = [ + ./grafana + #./loki + #./prometheus + ]; +} diff --git a/nixos/server/package-configs/dashboard/grafana/default.nix b/nixos/server/package-configs/dashboard/grafana/default.nix new file mode 100644 index 0000000..11305d1 --- /dev/null +++ b/nixos/server/package-configs/dashboard/grafana/default.nix @@ -0,0 +1,25 @@ +{ + config, + pkgs, + ... +}: { + # grafana configuration + services.grafana = { + enable = true; + domain = "grafana.lillianviolet.dev"; + http_port = 2342; + http_addr = "127.0.0.1"; + }; + + # nginx reverse proxy + services.nginx.virtualHosts.${config.services.grafana.domain} = { + ## Force HTTP redirect to HTTPS + forceSSL = true; + ## LetsEncrypt + enableACME = true; + locations."/" = { + proxyPass = "http://127.0.0.1:${toString config.services.grafana.port}"; + proxyWebsockets = true; + }; + }; +} diff --git a/nixos/server/package-configs/default.nix b/nixos/server/package-configs/default.nix index b0104c5..ff7d535 100644 --- a/nixos/server/package-configs/default.nix +++ b/nixos/server/package-configs/default.nix @@ -15,5 +15,6 @@ ./postgres ./roundcube ./coturn + ./dashboard ]; } From fe1dbd4f95c03895fd73109aa94c7bbc90c55dc4 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 14:34:28 +0100 Subject: [PATCH 141/199] Enable prometheus, add loki config example, we don't have a global log system so it's not useful though --- .../package-configs/dashboard/default.nix | 2 +- .../dashboard/grafana/default.nix | 18 +++++++++ .../dashboard/loki/default.nix | 10 +++++ .../package-configs/dashboard/loki/loki.yaml | 40 +++++++++++++++++++ .../dashboard/prometheus/default.nix | 38 ++++++++++++++++++ 5 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 nixos/server/package-configs/dashboard/loki/default.nix create mode 100644 nixos/server/package-configs/dashboard/loki/loki.yaml create mode 100644 nixos/server/package-configs/dashboard/prometheus/default.nix diff --git a/nixos/server/package-configs/dashboard/default.nix b/nixos/server/package-configs/dashboard/default.nix index 71b377b..5bbfb09 100644 --- a/nixos/server/package-configs/dashboard/default.nix +++ b/nixos/server/package-configs/dashboard/default.nix @@ -9,6 +9,6 @@ imports = [ ./grafana #./loki - #./prometheus + ./prometheus ]; } diff --git a/nixos/server/package-configs/dashboard/grafana/default.nix b/nixos/server/package-configs/dashboard/grafana/default.nix index 11305d1..e2f53ab 100644 --- a/nixos/server/package-configs/dashboard/grafana/default.nix +++ b/nixos/server/package-configs/dashboard/grafana/default.nix @@ -9,6 +9,24 @@ domain = "grafana.lillianviolet.dev"; http_port = 2342; http_addr = "127.0.0.1"; + provision = { + datasources = [ + { + name = "Prometheus"; + type = "prometheus"; + access = "proxy"; + url = "http://localhost:${config.services.prometheus.port}"; + isDefault = true; + } + { + name = "Loki"; + type = "loki"; + access = "proxy"; + url = "http://localhost:${config.services.loki.port}"; + isDefault = true; + } + ]; + }; }; # nginx reverse proxy diff --git a/nixos/server/package-configs/dashboard/loki/default.nix b/nixos/server/package-configs/dashboard/loki/default.nix new file mode 100644 index 0000000..6e68716 --- /dev/null +++ b/nixos/server/package-configs/dashboard/loki/default.nix @@ -0,0 +1,10 @@ +{ + config, + pkgs, + ... +}: { + services.loki = { + enable = true; + configFile = ./loki.yaml; + }; +} diff --git a/nixos/server/package-configs/dashboard/loki/loki.yaml b/nixos/server/package-configs/dashboard/loki/loki.yaml new file mode 100644 index 0000000..d0e9699 --- /dev/null +++ b/nixos/server/package-configs/dashboard/loki/loki.yaml @@ -0,0 +1,40 @@ +# Enables authentication through the X-Scope-OrgID header, which must be present +# if true. If false, the OrgID will always be set to "fake". +auth_enabled: false + +server: + http_listen_address: "0.0.0.0" + http_listen_port: 3100 + +ingester: + lifecycler: + address: "127.0.0.1" + ring: + kvstore: + store: inmemory + replication_factor: 1 + final_sleep: 0s + chunk_idle_period: 5m + chunk_retain_period: 30s + +schema_config: + configs: + - from: 2020-05-15 + store: boltdb + object_store: filesystem + schema: v11 + index: + prefix: index_ + period: 168h + +storage_config: + boltdb: + directory: /tmp/loki/index + + filesystem: + directory: /tmp/loki/chunks + +limits_config: + enforce_metric_name: false + reject_old_samples: true + reject_old_samples_max_age: 168h \ No newline at end of file diff --git a/nixos/server/package-configs/dashboard/prometheus/default.nix b/nixos/server/package-configs/dashboard/prometheus/default.nix new file mode 100644 index 0000000..5ea9535 --- /dev/null +++ b/nixos/server/package-configs/dashboard/prometheus/default.nix @@ -0,0 +1,38 @@ +{ + config, + pkgs, + ... +}: { + services.prometheus = { + enable = true; + port = 9001; + # Export the current system metrics + exporters = { + node = { + enable = true; + enabledCollectors = ["systemd"]; + port = 9002; + }; + }; + scrapeConfigs = [ + # Scrape the current system + { + job_name = "GrafanaService system"; + static_configs = [ + { + targets = ["127.0.0.1:9002"]; + } + ]; + } + # Scrape the Loki service + # { + # job_name = "Loki service"; + # static_configs = [ + # { + # targets = ["127.0.0.1:3100"]; + # } + # ]; + # } + ]; + }; +} From ea9aa2eddd6a5341b8335c0c95a25ef93309b386 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 14:35:54 +0100 Subject: [PATCH 142/199] That's where that is supposed to go for grafana --- .../server/package-configs/dashboard/grafana/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/nixos/server/package-configs/dashboard/grafana/default.nix b/nixos/server/package-configs/dashboard/grafana/default.nix index e2f53ab..de45e01 100644 --- a/nixos/server/package-configs/dashboard/grafana/default.nix +++ b/nixos/server/package-configs/dashboard/grafana/default.nix @@ -6,9 +6,11 @@ # grafana configuration services.grafana = { enable = true; - domain = "grafana.lillianviolet.dev"; - http_port = 2342; - http_addr = "127.0.0.1"; + server = { + domain = "grafana.lillianviolet.dev"; + http_port = 2342; + http_addr = "127.0.0.1"; + }; provision = { datasources = [ { From 2c33f7d0693a176213af0ae0de5b0b1df51e494c Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 14:37:02 +0100 Subject: [PATCH 143/199] Disable loki in grafana, settings.server not just server --- .../dashboard/grafana/default.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/nixos/server/package-configs/dashboard/grafana/default.nix b/nixos/server/package-configs/dashboard/grafana/default.nix index de45e01..2bde79a 100644 --- a/nixos/server/package-configs/dashboard/grafana/default.nix +++ b/nixos/server/package-configs/dashboard/grafana/default.nix @@ -6,7 +6,7 @@ # grafana configuration services.grafana = { enable = true; - server = { + settings.server = { domain = "grafana.lillianviolet.dev"; http_port = 2342; http_addr = "127.0.0.1"; @@ -20,13 +20,13 @@ url = "http://localhost:${config.services.prometheus.port}"; isDefault = true; } - { - name = "Loki"; - type = "loki"; - access = "proxy"; - url = "http://localhost:${config.services.loki.port}"; - isDefault = true; - } + # { + # name = "Loki"; + # type = "loki"; + # access = "proxy"; + # url = "http://localhost:${config.services.loki.port}"; + # isDefault = true; + # } ]; }; }; From 9dacc2172eb1d0f5aadd49a6ecd2fa46cc5a9284 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 14:40:05 +0100 Subject: [PATCH 144/199] Let's change those in nginx too --- nixos/server/package-configs/dashboard/grafana/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/server/package-configs/dashboard/grafana/default.nix b/nixos/server/package-configs/dashboard/grafana/default.nix index 2bde79a..b952195 100644 --- a/nixos/server/package-configs/dashboard/grafana/default.nix +++ b/nixos/server/package-configs/dashboard/grafana/default.nix @@ -32,13 +32,13 @@ }; # nginx reverse proxy - services.nginx.virtualHosts.${config.services.grafana.domain} = { + services.nginx.virtualHosts.${config.services.grafana.settings.server.domain} = { ## Force HTTP redirect to HTTPS forceSSL = true; ## LetsEncrypt enableACME = true; locations."/" = { - proxyPass = "http://127.0.0.1:${toString config.services.grafana.port}"; + proxyPass = "http://127.0.0.1:${toString config.services.grafana.settings.server.port}"; proxyWebsockets = true; }; }; From 3c830bc6c467f73d6e7aeb2d33b1405cdd6bdbe8 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Tue, 26 Mar 2024 14:52:15 +0100 Subject: [PATCH 145/199] Had to do a toString, thanks for the great error message nixos, fixed some other typos --- .../dashboard/grafana/default.nix | 37 ++++++++++--------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/nixos/server/package-configs/dashboard/grafana/default.nix b/nixos/server/package-configs/dashboard/grafana/default.nix index b952195..5589873 100644 --- a/nixos/server/package-configs/dashboard/grafana/default.nix +++ b/nixos/server/package-configs/dashboard/grafana/default.nix @@ -12,22 +12,25 @@ http_addr = "127.0.0.1"; }; provision = { - datasources = [ - { - name = "Prometheus"; - type = "prometheus"; - access = "proxy"; - url = "http://localhost:${config.services.prometheus.port}"; - isDefault = true; - } - # { - # name = "Loki"; - # type = "loki"; - # access = "proxy"; - # url = "http://localhost:${config.services.loki.port}"; - # isDefault = true; - # } - ]; + datasources.settings = { + apiVersion = 1; + datasources = [ + { + name = "Prometheus"; + type = "prometheus"; + access = "proxy"; + url = "http://localhost:${toString config.services.prometheus.port}"; + isDefault = true; + } + # { + # name = "Loki"; + # type = "loki"; + # access = "proxy"; + # url = "http://localhost:${config.services.loki.port}"; + # isDefault = true; + # } + ]; + }; }; }; @@ -38,7 +41,7 @@ ## LetsEncrypt enableACME = true; locations."/" = { - proxyPass = "http://127.0.0.1:${toString config.services.grafana.settings.server.port}"; + proxyPass = "http://${toString config.services.grafana.settings.server.http_addr}:${toString config.services.grafana.settings.server.http_port}"; proxyWebsockets = true; }; }; From 70a717311a0609fd5640b7e90697453290623b82 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 27 Mar 2024 17:27:53 +0100 Subject: [PATCH 146/199] Update plasma manager --- .../desktop/plasma-desktop/default.nix | 1343 +++++++++-------- 1 file changed, 679 insertions(+), 664 deletions(-) diff --git a/home-manager/desktop/plasma-desktop/default.nix b/home-manager/desktop/plasma-desktop/default.nix index 48e77cf..6324947 100644 --- a/home-manager/desktop/plasma-desktop/default.nix +++ b/home-manager/desktop/plasma-desktop/default.nix @@ -239,672 +239,687 @@ "plasmashell"."switch to next activity" = []; "plasmashell"."switch to previous activity" = []; "plasmashell"."toggle do not disturb" = []; - "services.org.kde.plasma-systemmonitor.desktop"."_launch" = "Ctrl+Esc"; - "services.org.kde.spectacle.desktop"."ActiveWindowScreenShot" = ["Meta+Print" "Ctrl+!"]; - "services.org.kde.spectacle.desktop"."CurrentMonitorScreenShot" = "Ctrl+#"; - "services.org.kde.spectacle.desktop"."FullScreenScreenShot" = ["Ctrl+$" "Shift+Print"]; - "services.org.kde.spectacle.desktop"."OpenWithoutScreenshot" = "Ctrl+^"; - "services.org.kde.spectacle.desktop"."RecordWindow" = []; - "services.org.kde.spectacle.desktop"."RectangularRegionScreenShot" = ["Ctrl+@" "Meta+Shift+Print"]; - "services.org.kde.spectacle.desktop"."WindowUnderCursorScreenShot" = ["Meta+Ctrl+Print" "Ctrl+%"]; - "services.org.kde.spectacle.desktop"."_launch" = "Print"; - "services.services.org.kde.plasma-systemmonitor.desktop"."_launch" = "Ctrl+Esc"; - "services.services.org.kde.spectacle.desktop"."ActiveWindowScreenShot" = ["" "Meta+Print" "Ctrl+!"]; - "services.services.org.kde.spectacle.desktop"."CurrentMonitorScreenShot" = "Ctrl+#"; - "services.services.org.kde.spectacle.desktop"."FullScreenScreenShot" = ["" "Ctrl+$" "Shift+Print"]; - "services.services.org.kde.spectacle.desktop"."OpenWithoutScreenshot" = "Ctrl+^"; - "services.services.org.kde.spectacle.desktop"."RecordWindow" = []; - "services.services.org.kde.spectacle.desktop"."RectangularRegionScreenShot" = ["" "Ctrl+@" "Meta+Shift+Print"]; - "services.services.org.kde.spectacle.desktop"."WindowUnderCursorScreenShot" = ["" "Meta+Ctrl+Print" "Ctrl+%"]; - "services.services.org.kde.spectacle.desktop"."_launch" = "Print"; + "services/org.kde.plasma-systemmonitor.desktop"."_launch" = "Ctrl+Esc"; + "services/org.kde.spectacle.desktop"."ActiveWindowScreenShot" = ["Meta+Print" "Ctrl+!"]; + "services/org.kde.spectacle.desktop"."CurrentMonitorScreenShot" = "Ctrl+#"; + "services/org.kde.spectacle.desktop"."FullScreenScreenShot" = ["Ctrl+$" "Shift+Print"]; + "services/org.kde.spectacle.desktop"."OpenWithoutScreenshot" = "Ctrl+^"; + "services/org.kde.spectacle.desktop"."RecordWindow" = []; + "services/org.kde.spectacle.desktop"."RectangularRegionScreenShot" = ["Ctrl+@" "Meta+Shift+Print"]; + "services/org.kde.spectacle.desktop"."WindowUnderCursorScreenShot" = ["Meta+Ctrl+Print" "Ctrl+%"]; + "services/org.kde.spectacle.desktop"."_launch" = "Print"; + "services/services.org.kde.plasma-systemmonitor.desktop"."_launch" = "Ctrl+Esc"; + "services/services.org.kde.spectacle.desktop"."ActiveWindowScreenShot" = ["" "Meta+Print" "Ctrl+!"]; + "services/services.org.kde.spectacle.desktop"."CurrentMonitorScreenShot" = "Ctrl+#"; + "services/services.org.kde.spectacle.desktop"."FullScreenScreenShot" = ["" "Ctrl+$" "Shift+Print"]; + "services/services.org.kde.spectacle.desktop"."OpenWithoutScreenshot" = "Ctrl+^"; + "services/services.org.kde.spectacle.desktop"."RecordWindow" = []; + "services/services.org.kde.spectacle.desktop"."RectangularRegionScreenShot" = ["" "Ctrl+@" "Meta+Shift+Print"]; + "services/services.org.kde.spectacle.desktop"."WindowUnderCursorScreenShot" = ["" "Meta+Ctrl+Print" "Ctrl+%"]; + "services/services.org.kde.spectacle.desktop"."_launch" = "Print"; + "services/services.services.org.kde.plasma-systemmonitor.desktop"."_launch" = "Ctrl+Esc"; + "services/services.services.org.kde.spectacle.desktop"."ActiveWindowScreenShot" = ["" "" "Meta+Print" "Ctrl+!"]; + "services/services.services.org.kde.spectacle.desktop"."CurrentMonitorScreenShot" = "Ctrl+#"; + "services/services.services.org.kde.spectacle.desktop"."FullScreenScreenShot" = ["" "" "Ctrl+$" "Shift+Print"]; + "services/services.services.org.kde.spectacle.desktop"."OpenWithoutScreenshot" = "Ctrl+^"; + "services/services.services.org.kde.spectacle.desktop"."RecordWindow" = []; + "services/services.services.org.kde.spectacle.desktop"."RectangularRegionScreenShot" = ["" "" "Ctrl+@" "Meta+Shift+Print"]; + "services/services.services.org.kde.spectacle.desktop"."WindowUnderCursorScreenShot" = ["" "" "Meta+Ctrl+Print" "Ctrl+%"]; + "services/services.services.org.kde.spectacle.desktop"."_launch" = "Print"; }; configFile = { - "baloofilerc"."General"."dbVersion" = 2; - "baloofilerc"."General"."exclude filters" = "*~,*.part,*.o,*.la,*.lo,*.loT,*.moc,moc_*.cpp,qrc_*.cpp,ui_*.h,cmake_install.cmake,CMakeCache.txt,CTestTestfile.cmake,libtool,config.status,confdefs.h,autom4te,conftest,confstat,Makefile.am,*.gcode,.ninja_deps,.ninja_log,build.ninja,*.csproj,*.m4,*.rej,*.gmo,*.pc,*.omf,*.aux,*.tmp,*.po,*.vm*,*.nvram,*.rcore,*.swp,*.swap,lzo,litmain.sh,*.orig,.histfile.*,.xsession-errors*,*.map,*.so,*.a,*.db,*.qrc,*.ini,*.init,*.img,*.vdi,*.vbox*,vbox.log,*.qcow2,*.vmdk,*.vhd,*.vhdx,*.sql,*.sql.gz,*.ytdl,*.class,*.pyc,*.pyo,*.elc,*.qmlc,*.jsc,*.fastq,*.fq,*.gb,*.fasta,*.fna,*.gbff,*.faa,po,CVS,.svn,.git,_darcs,.bzr,.hg,CMakeFiles,CMakeTmp,CMakeTmpQmake,.moc,.obj,.pch,.uic,.npm,.yarn,.yarn-cache,__pycache__,node_modules,node_packages,nbproject,.venv,venv,core-dumps,lost+found"; - "baloofilerc"."General"."exclude filters version" = 8; - "dolphinrc"."ExtractDialog"."1536x864 screen: Height" = 560; - "dolphinrc"."ExtractDialog"."1536x864 screen: Width" = 1024; - "dolphinrc"."ExtractDialog"."DirHistory[$e]" = "/home/"; - "dolphinrc"."General"."RememberOpenedTabs" = false; - "dolphinrc"."IconsMode"."PreviewSize" = 80; - "dolphinrc"."KFileDialog Settings"."Places Icons Auto-resize" = false; - "dolphinrc"."KFileDialog Settings"."Places Icons Static Size" = 22; - "dolphinrc"."KFileDialog Settings"."detailViewIconSize" = 16; - "dolphinrc"."PreviewSettings"."Plugins" = "mobithumbnail,fontthumbnail,ebookthumbnail,kraorathumbnail,jpegthumbnail,windowsexethumbnail,comicbookthumbnail,djvuthumbnail,opendocumentthumbnail,windowsimagethumbnail,exrthumbnail,audiothumbnail,cursorthumbnail,svgthumbnail,blenderthumbnail,gsthumbnail,rawthumbnail,ffmpegthumbs,imagethumbnail,directorythumbnail"; - "kactivitymanagerdrc"."activities"."a2cd7f51-1f1f-47a8-9544-a4c401f57a12" = "Default"; - "kactivitymanagerdrc"."main"."currentActivity" = "a2cd7f51-1f1f-47a8-9544-a4c401f57a12"; - "kcminputrc"."Libinput.1739.30383.CUST0001:00 06CB:76AF Touchpad"."MiddleButtonEmulation" = true; - "kcminputrc"."Libinput.1739.30383.CUST0001:00 06CB:76AF Touchpad"."NaturalScroll" = true; - "kcminputrc"."Libinput.1739.30383.CUST0001:00 06CB:76AF Touchpad"."TapToClick" = true; - "kcminputrc"."Tmp"."update_info" = "delete_cursor_old_default_size.upd:DeleteCursorOldDefaultSize"; - "kded5rc"."Module-browserintegrationreminder"."autoload" = false; - "kded5rc"."Module-device_automounter"."autoload" = false; - "kded5rc"."PlasmaBrowserIntegration"."shownCount" = 1; - "kdeglobals"."General"."AccentColor" = "184,117,220"; - "kdeglobals"."General"."AllowKDEAppsToRememberWindowPositions" = true; - "kdeglobals"."General"."BrowserApplication" = "firefox.desktop"; - "kdeglobals"."General"."LastUsedCustomAccentColor" = "184,117,220"; - "kdeglobals"."KDE"."AnimationDurationFactor" = 0.7071067811865475; - "kdeglobals"."KDE"."ShowDeleteCommand" = false; - "kdeglobals"."KDE"."SingleClick" = false; - "kdeglobals"."KFileDialog Settings"."Allow Expansion" = false; - "kdeglobals"."KFileDialog Settings"."Automatically select filename extension" = true; - "kdeglobals"."KFileDialog Settings"."Breadcrumb Navigation" = false; - "kdeglobals"."KFileDialog Settings"."Decoration position" = 2; - "kdeglobals"."KFileDialog Settings"."LocationCombo Completionmode" = 5; - "kdeglobals"."KFileDialog Settings"."PathCombo Completionmode" = 5; - "kdeglobals"."KFileDialog Settings"."Show Bookmarks" = false; - "kdeglobals"."KFileDialog Settings"."Show Full Path" = false; - "kdeglobals"."KFileDialog Settings"."Show Inline Previews" = true; - "kdeglobals"."KFileDialog Settings"."Show Preview" = false; - "kdeglobals"."KFileDialog Settings"."Show Speedbar" = true; - "kdeglobals"."KFileDialog Settings"."Show hidden files" = false; - "kdeglobals"."KFileDialog Settings"."Sort by" = "Date"; - "kdeglobals"."KFileDialog Settings"."Sort directories first" = true; - "kdeglobals"."KFileDialog Settings"."Sort hidden files last" = false; - "kdeglobals"."KFileDialog Settings"."Sort reversed" = false; - "kdeglobals"."KFileDialog Settings"."Speedbar Width" = 138; - "kdeglobals"."KFileDialog Settings"."View Style" = "DetailTree"; - "kdeglobals"."KShortcutsDialog Settings"."Dialog Size" = "600,480"; - "kdeglobals"."PreviewSettings"."MaximumRemoteSize" = 0; - "kdeglobals"."WM"."activeBackground" = "49,54,59"; - "kdeglobals"."WM"."activeBlend" = "252,252,252"; - "kdeglobals"."WM"."activeForeground" = "252,252,252"; - "kdeglobals"."WM"."inactiveBackground" = "42,46,50"; - "kdeglobals"."WM"."inactiveBlend" = "161,169,177"; - "kdeglobals"."WM"."inactiveForeground" = "161,169,177"; - "kglobalshortcutsrc"."ActivityManager"."_k_friendly_name" = "Activity Manager"; - "kglobalshortcutsrc"."KDE Keyboard Layout Switcher"."_k_friendly_name" = "Keyboard Layout Switcher"; - "kglobalshortcutsrc"."kaccess"."_k_friendly_name" = "Accessibility"; - "kglobalshortcutsrc"."kcm_touchpad"."_k_friendly_name" = "Touchpad"; - "kglobalshortcutsrc"."khotkeys"."_k_friendly_name" = "Custom Shortcuts Service"; - "kglobalshortcutsrc"."kmix"."_k_friendly_name" = "Audio Volume"; - "kglobalshortcutsrc"."ksmserver"."_k_friendly_name" = "Session Management"; - "kglobalshortcutsrc"."kwin"."_k_friendly_name" = "KWin"; - "kglobalshortcutsrc"."mediacontrol"."_k_friendly_name" = "Media Controller"; - "kglobalshortcutsrc"."org_kde_powerdevil"."_k_friendly_name" = "KDE Power Management System"; - "kglobalshortcutsrc"."plasmashell"."_k_friendly_name" = "plasmashell"; - "khotkeysrc"."Data"."DataCount" = 3; - "khotkeysrc"."Data_1"."Comment" = "KMenuEdit Global Shortcuts"; - "khotkeysrc"."Data_1"."DataCount" = 1; - "khotkeysrc"."Data_1"."Enabled" = true; - "khotkeysrc"."Data_1"."Name" = "KMenuEdit"; - "khotkeysrc"."Data_1"."SystemGroup" = 1; - "khotkeysrc"."Data_1"."Type" = "ACTION_DATA_GROUP"; - "khotkeysrc"."Data_1Conditions"."Comment" = ""; - "khotkeysrc"."Data_1Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_1_1"."Comment" = "Comment"; - "khotkeysrc"."Data_1_1"."Enabled" = true; - "khotkeysrc"."Data_1_1"."Name" = "Search"; - "khotkeysrc"."Data_1_1"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_1_1Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_1_1Actions0"."CommandURL" = "http://google.com"; - "khotkeysrc"."Data_1_1Actions0"."Type" = "COMMAND_URL"; - "khotkeysrc"."Data_1_1Conditions"."Comment" = ""; - "khotkeysrc"."Data_1_1Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_1_1Triggers"."Comment" = "Simple_action"; - "khotkeysrc"."Data_1_1Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_1_1Triggers0"."Key" = ""; - "khotkeysrc"."Data_1_1Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_1_1Triggers0"."Uuid" = "{d03619b6-9b3c-48cc-9d9c-a2aadb485550}"; - "khotkeysrc"."Data_2"."Comment" = "This group contains various examples demonstrating most of the features of KHotkeys. (Note that this group and all its actions are disabled by default.)"; - "khotkeysrc"."Data_2"."DataCount" = 8; - "khotkeysrc"."Data_2"."Enabled" = false; - "khotkeysrc"."Data_2"."ImportId" = "kde32b1"; - "khotkeysrc"."Data_2"."Name" = "Examples"; - "khotkeysrc"."Data_2"."SystemGroup" = 0; - "khotkeysrc"."Data_2"."Type" = "ACTION_DATA_GROUP"; - "khotkeysrc"."Data_2Conditions"."Comment" = ""; - "khotkeysrc"."Data_2Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_1"."Comment" = "After pressing Ctrl+Alt+I, the KSIRC window will be activated, if it exists. Simple."; - "khotkeysrc"."Data_2_1"."Enabled" = false; - "khotkeysrc"."Data_2_1"."Name" = "Activate KSIRC Window"; - "khotkeysrc"."Data_2_1"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_1Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_1Actions0"."Type" = "ACTIVATE_WINDOW"; - "khotkeysrc"."Data_2_1Actions0Window"."Comment" = "KSIRC window"; - "khotkeysrc"."Data_2_1Actions0Window"."WindowsCount" = 1; - "khotkeysrc"."Data_2_1Actions0Window0"."Class" = "ksirc"; - "khotkeysrc"."Data_2_1Actions0Window0"."ClassType" = 1; - "khotkeysrc"."Data_2_1Actions0Window0"."Comment" = "KSIRC"; - "khotkeysrc"."Data_2_1Actions0Window0"."Role" = ""; - "khotkeysrc"."Data_2_1Actions0Window0"."RoleType" = 0; - "khotkeysrc"."Data_2_1Actions0Window0"."Title" = ""; - "khotkeysrc"."Data_2_1Actions0Window0"."TitleType" = 0; - "khotkeysrc"."Data_2_1Actions0Window0"."Type" = "SIMPLE"; - "khotkeysrc"."Data_2_1Actions0Window0"."WindowTypes" = 33; - "khotkeysrc"."Data_2_1Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_1Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_1Triggers"."Comment" = "Simple_action"; - "khotkeysrc"."Data_2_1Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_2_1Triggers0"."Key" = "Ctrl+Alt+I"; - "khotkeysrc"."Data_2_1Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_2_1Triggers0"."Uuid" = "{edd7522b-b1b3-4273-838a-358ee66356b2}"; - "khotkeysrc"."Data_2_2"."Comment" = "After pressing Alt+Ctrl+H the input of 'Hello' will be simulated, as if you typed it. This is especially useful if you have call to frequently type a word (for instance, 'unsigned'). Every keypress in the input is separated by a colon ':'. Note that the keypresses literally mean keypresses, so you have to write what you would press on the keyboard. In the table below, the left column shows the input and the right column shows what to type.\n\n\"enter\" (i.e. new line) Enter or Return\na (i.e. small a) A\nA (i.e. capital a) Shift+A\n: (colon) Shift+;\n' ' (space) Space"; - "khotkeysrc"."Data_2_2"."Enabled" = false; - "khotkeysrc"."Data_2_2"."Name" = "Type 'Hello'"; - "khotkeysrc"."Data_2_2"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_2Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_2Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_2_2Actions0"."Input" = "Shift+H:E:L:L:O\n"; - "khotkeysrc"."Data_2_2Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_2_2Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_2Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_2Triggers"."Comment" = "Simple_action"; - "khotkeysrc"."Data_2_2Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_2_2Triggers0"."Key" = "Ctrl+Alt+H"; - "khotkeysrc"."Data_2_2Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_2_2Triggers0"."Uuid" = "{fd8182a4-81c3-4540-8e28-f7e5e72585c5}"; - "khotkeysrc"."Data_2_3"."Comment" = "This action runs Konsole, after pressing Ctrl+Alt+T."; - "khotkeysrc"."Data_2_3"."Enabled" = false; - "khotkeysrc"."Data_2_3"."Name" = "Run Konsole"; - "khotkeysrc"."Data_2_3"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_3Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_3Actions0"."CommandURL" = "konsole"; - "khotkeysrc"."Data_2_3Actions0"."Type" = "COMMAND_URL"; - "khotkeysrc"."Data_2_3Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_3Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_3Triggers"."Comment" = "Simple_action"; - "khotkeysrc"."Data_2_3Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_2_3Triggers0"."Key" = "Ctrl+Alt+T"; - "khotkeysrc"."Data_2_3Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_2_3Triggers0"."Uuid" = "{cdaec3a6-214e-4cc5-a877-c1df7064993e}"; - "khotkeysrc"."Data_2_4"."Comment" = "Read the comment on the \"Type 'Hello'\" action first.\n\nQt Designer uses Ctrl+F4 for closing windows. In KDE, however, Ctrl+F4 is the shortcut for going to virtual desktop 4, so this shortcut does not work in Qt Designer. Further, Qt Designer does not use KDE's standard Ctrl+W for closing the window.\n\nThis problem can be solved by remapping Ctrl+W to Ctrl+F4 when the active window is Qt Designer. When Qt Designer is active, every time Ctrl+W is pressed, Ctrl+F4 will be sent to Qt Designer instead. In other applications, the effect of Ctrl+W is unchanged.\n\nWe now need to specify three things: A new shortcut trigger on 'Ctrl+W', a new keyboard input action sending Ctrl+F4, and a new condition that the active window is Qt Designer.\nQt Designer seems to always have title 'Qt Designer by Trolltech', so the condition will check for the active window having that title."; - "khotkeysrc"."Data_2_4"."Enabled" = false; - "khotkeysrc"."Data_2_4"."Name" = "Remap Ctrl+W to Ctrl+F4 in Qt Designer"; - "khotkeysrc"."Data_2_4"."Type" = "GENERIC_ACTION_DATA"; - "khotkeysrc"."Data_2_4Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_4Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_2_4Actions0"."Input" = "Ctrl+F4"; - "khotkeysrc"."Data_2_4Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_2_4Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_4Conditions"."ConditionsCount" = 1; - "khotkeysrc"."Data_2_4Conditions0"."Type" = "ACTIVE_WINDOW"; - "khotkeysrc"."Data_2_4Conditions0Window"."Comment" = "Qt Designer"; - "khotkeysrc"."Data_2_4Conditions0Window"."WindowsCount" = 1; - "khotkeysrc"."Data_2_4Conditions0Window0"."Class" = ""; - "khotkeysrc"."Data_2_4Conditions0Window0"."ClassType" = 0; - "khotkeysrc"."Data_2_4Conditions0Window0"."Comment" = ""; - "khotkeysrc"."Data_2_4Conditions0Window0"."Role" = ""; - "khotkeysrc"."Data_2_4Conditions0Window0"."RoleType" = 0; - "khotkeysrc"."Data_2_4Conditions0Window0"."Title" = "Qt Designer by Trolltech"; - "khotkeysrc"."Data_2_4Conditions0Window0"."TitleType" = 2; - "khotkeysrc"."Data_2_4Conditions0Window0"."Type" = "SIMPLE"; - "khotkeysrc"."Data_2_4Conditions0Window0"."WindowTypes" = 33; - "khotkeysrc"."Data_2_4Triggers"."Comment" = ""; - "khotkeysrc"."Data_2_4Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_2_4Triggers0"."Key" = "Ctrl+W"; - "khotkeysrc"."Data_2_4Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_2_4Triggers0"."Uuid" = "{be4d63e1-1548-4c32-bdae-670b212885a5}"; - "khotkeysrc"."Data_2_5"."Comment" = "By pressing Alt+Ctrl+W a D-Bus call will be performed that will show the minicli. You can use any kind of D-Bus call, just like using the command line 'qdbus' tool."; - "khotkeysrc"."Data_2_5"."Enabled" = false; - "khotkeysrc"."Data_2_5"."Name" = "Perform D-Bus call 'qdbus org.kde.krunner /App display'"; - "khotkeysrc"."Data_2_5"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_5Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_5Actions0"."Arguments" = ""; - "khotkeysrc"."Data_2_5Actions0"."Call" = "popupExecuteCommand"; - "khotkeysrc"."Data_2_5Actions0"."RemoteApp" = "org.kde.krunner"; - "khotkeysrc"."Data_2_5Actions0"."RemoteObj" = "/App"; - "khotkeysrc"."Data_2_5Actions0"."Type" = "DBUS"; - "khotkeysrc"."Data_2_5Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_5Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_5Triggers"."Comment" = "Simple_action"; - "khotkeysrc"."Data_2_5Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_2_5Triggers0"."Key" = "Ctrl+Alt+W"; - "khotkeysrc"."Data_2_5Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_2_5Triggers0"."Uuid" = "{04f1cf14-2324-43a4-854e-867e289623db}"; - "khotkeysrc"."Data_2_6"."Comment" = "Read the comment on the \"Type 'Hello'\" action first.\n\nJust like the \"Type 'Hello'\" action, this one simulates keyboard input, specifically, after pressing Ctrl+Alt+B, it sends B to XMMS (B in XMMS jumps to the next song). The 'Send to specific window' checkbox is checked and a window with its class containing 'XMMS_Player' is specified; this will make the input always be sent to this window. This way, you can control XMMS even if, for instance, it is on a different virtual desktop.\n\n(Run 'xprop' and click on the XMMS window and search for WM_CLASS to see 'XMMS_Player')."; - "khotkeysrc"."Data_2_6"."Enabled" = false; - "khotkeysrc"."Data_2_6"."Name" = "Next in XMMS"; - "khotkeysrc"."Data_2_6"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_6Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_6Actions0"."DestinationWindow" = 1; - "khotkeysrc"."Data_2_6Actions0"."Input" = "B"; - "khotkeysrc"."Data_2_6Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_2_6Actions0DestinationWindow"."Comment" = "XMMS window"; - "khotkeysrc"."Data_2_6Actions0DestinationWindow"."WindowsCount" = 1; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Class" = "XMMS_Player"; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."ClassType" = 1; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Comment" = "XMMS Player window"; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Role" = ""; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."RoleType" = 0; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Title" = ""; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."TitleType" = 0; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Type" = "SIMPLE"; - "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."WindowTypes" = 33; - "khotkeysrc"."Data_2_6Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_6Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_6Triggers"."Comment" = "Simple_action"; - "khotkeysrc"."Data_2_6Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_2_6Triggers0"."Key" = "Ctrl+Alt+B"; - "khotkeysrc"."Data_2_6Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_2_6Triggers0"."Uuid" = "{c6793be6-3845-4af5-97c0-3d09f9118e6b}"; - "khotkeysrc"."Data_2_7"."Comment" = "Konqueror in KDE3.1 has tabs, and now you can also have gestures.\n\nJust press the middle mouse button and start drawing one of the gestures, and after you are finished, release the mouse button. If you only need to paste the selection, it still works, just click the middle mouse button. (You can change the mouse button to use in the global settings).\n\nRight now, there are the following gestures available:\nmove right and back left - Forward (Alt+Right)\nmove left and back right - Back (Alt+Left)\nmove up and back down - Up (Alt+Up)\ncircle counterclockwise - Reload (F5)\n\nThe gesture shapes can be entered by performing them in the configuration dialog. You can also look at your numeric pad to help you: gestures are recognized like a 3x3 grid of fields, numbered 1 to 9.\n\nNote that you must perform exactly the gesture to trigger the action. Because of this, it is possible to enter more gestures for the action. You should try to avoid complicated gestures where you change the direction of mouse movement more than once. For instance, 45654 or 74123 are simple to perform, but 1236987 may be already quite difficult.\n\nThe conditions for all gestures are defined in this group. All these gestures are active only if the active window is Konqueror (class contains 'konqueror')."; - "khotkeysrc"."Data_2_7"."DataCount" = 4; - "khotkeysrc"."Data_2_7"."Enabled" = false; - "khotkeysrc"."Data_2_7"."Name" = "Konqi Gestures"; - "khotkeysrc"."Data_2_7"."SystemGroup" = 0; - "khotkeysrc"."Data_2_7"."Type" = "ACTION_DATA_GROUP"; - "khotkeysrc"."Data_2_7Conditions"."Comment" = "Konqueror window"; - "khotkeysrc"."Data_2_7Conditions"."ConditionsCount" = 1; - "khotkeysrc"."Data_2_7Conditions0"."Type" = "ACTIVE_WINDOW"; - "khotkeysrc"."Data_2_7Conditions0Window"."Comment" = "Konqueror"; - "khotkeysrc"."Data_2_7Conditions0Window"."WindowsCount" = 1; - "khotkeysrc"."Data_2_7Conditions0Window0"."Class" = "konqueror"; - "khotkeysrc"."Data_2_7Conditions0Window0"."ClassType" = 1; - "khotkeysrc"."Data_2_7Conditions0Window0"."Comment" = "Konqueror"; - "khotkeysrc"."Data_2_7Conditions0Window0"."Role" = ""; - "khotkeysrc"."Data_2_7Conditions0Window0"."RoleType" = 0; - "khotkeysrc"."Data_2_7Conditions0Window0"."Title" = ""; - "khotkeysrc"."Data_2_7Conditions0Window0"."TitleType" = 0; - "khotkeysrc"."Data_2_7Conditions0Window0"."Type" = "SIMPLE"; - "khotkeysrc"."Data_2_7Conditions0Window0"."WindowTypes" = 33; - "khotkeysrc"."Data_2_7_1"."Comment" = ""; - "khotkeysrc"."Data_2_7_1"."Enabled" = false; - "khotkeysrc"."Data_2_7_1"."Name" = "Back"; - "khotkeysrc"."Data_2_7_1"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_7_1Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_7_1Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_2_7_1Actions0"."Input" = "Alt+Left"; - "khotkeysrc"."Data_2_7_1Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_2_7_1Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_7_1Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_7_1Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_2_7_1Triggers"."TriggersCount" = 3; - "khotkeysrc"."Data_2_7_1Triggers0"."GesturePointData" = "0,0.0625,1,1,0.5,0.0625,0.0625,1,0.875,0.5,0.125,0.0625,1,0.75,0.5,0.1875,0.0625,1,0.625,0.5,0.25,0.0625,1,0.5,0.5,0.3125,0.0625,1,0.375,0.5,0.375,0.0625,1,0.25,0.5,0.4375,0.0625,1,0.125,0.5,0.5,0.0625,0,0,0.5,0.5625,0.0625,0,0.125,0.5,0.625,0.0625,0,0.25,0.5,0.6875,0.0625,0,0.375,0.5,0.75,0.0625,0,0.5,0.5,0.8125,0.0625,0,0.625,0.5,0.875,0.0625,0,0.75,0.5,0.9375,0.0625,0,0.875,0.5,1,0,0,1,0.5"; - "khotkeysrc"."Data_2_7_1Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_1Triggers1"."GesturePointData" = "0,0.0833333,1,0.5,0.5,0.0833333,0.0833333,1,0.375,0.5,0.166667,0.0833333,1,0.25,0.5,0.25,0.0833333,1,0.125,0.5,0.333333,0.0833333,0,0,0.5,0.416667,0.0833333,0,0.125,0.5,0.5,0.0833333,0,0.25,0.5,0.583333,0.0833333,0,0.375,0.5,0.666667,0.0833333,0,0.5,0.5,0.75,0.0833333,0,0.625,0.5,0.833333,0.0833333,0,0.75,0.5,0.916667,0.0833333,0,0.875,0.5,1,0,0,1,0.5"; - "khotkeysrc"."Data_2_7_1Triggers1"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_1Triggers2"."GesturePointData" = "0,0.0833333,1,1,0.5,0.0833333,0.0833333,1,0.875,0.5,0.166667,0.0833333,1,0.75,0.5,0.25,0.0833333,1,0.625,0.5,0.333333,0.0833333,1,0.5,0.5,0.416667,0.0833333,1,0.375,0.5,0.5,0.0833333,1,0.25,0.5,0.583333,0.0833333,1,0.125,0.5,0.666667,0.0833333,0,0,0.5,0.75,0.0833333,0,0.125,0.5,0.833333,0.0833333,0,0.25,0.5,0.916667,0.0833333,0,0.375,0.5,1,0,0,0.5,0.5"; - "khotkeysrc"."Data_2_7_1Triggers2"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_2"."Comment" = ""; - "khotkeysrc"."Data_2_7_2"."Enabled" = false; - "khotkeysrc"."Data_2_7_2"."Name" = "Forward"; - "khotkeysrc"."Data_2_7_2"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_7_2Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_7_2Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_2_7_2Actions0"."Input" = "Alt+Right"; - "khotkeysrc"."Data_2_7_2Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_2_7_2Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_7_2Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_7_2Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_2_7_2Triggers"."TriggersCount" = 3; - "khotkeysrc"."Data_2_7_2Triggers0"."GesturePointData" = "0,0.0625,0,0,0.5,0.0625,0.0625,0,0.125,0.5,0.125,0.0625,0,0.25,0.5,0.1875,0.0625,0,0.375,0.5,0.25,0.0625,0,0.5,0.5,0.3125,0.0625,0,0.625,0.5,0.375,0.0625,0,0.75,0.5,0.4375,0.0625,0,0.875,0.5,0.5,0.0625,1,1,0.5,0.5625,0.0625,1,0.875,0.5,0.625,0.0625,1,0.75,0.5,0.6875,0.0625,1,0.625,0.5,0.75,0.0625,1,0.5,0.5,0.8125,0.0625,1,0.375,0.5,0.875,0.0625,1,0.25,0.5,0.9375,0.0625,1,0.125,0.5,1,0,0,0,0.5"; - "khotkeysrc"."Data_2_7_2Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_2Triggers1"."GesturePointData" = "0,0.0833333,0,0.5,0.5,0.0833333,0.0833333,0,0.625,0.5,0.166667,0.0833333,0,0.75,0.5,0.25,0.0833333,0,0.875,0.5,0.333333,0.0833333,1,1,0.5,0.416667,0.0833333,1,0.875,0.5,0.5,0.0833333,1,0.75,0.5,0.583333,0.0833333,1,0.625,0.5,0.666667,0.0833333,1,0.5,0.5,0.75,0.0833333,1,0.375,0.5,0.833333,0.0833333,1,0.25,0.5,0.916667,0.0833333,1,0.125,0.5,1,0,0,0,0.5"; - "khotkeysrc"."Data_2_7_2Triggers1"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_2Triggers2"."GesturePointData" = "0,0.0833333,0,0,0.5,0.0833333,0.0833333,0,0.125,0.5,0.166667,0.0833333,0,0.25,0.5,0.25,0.0833333,0,0.375,0.5,0.333333,0.0833333,0,0.5,0.5,0.416667,0.0833333,0,0.625,0.5,0.5,0.0833333,0,0.75,0.5,0.583333,0.0833333,0,0.875,0.5,0.666667,0.0833333,1,1,0.5,0.75,0.0833333,1,0.875,0.5,0.833333,0.0833333,1,0.75,0.5,0.916667,0.0833333,1,0.625,0.5,1,0,0,0.5,0.5"; - "khotkeysrc"."Data_2_7_2Triggers2"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_3"."Comment" = ""; - "khotkeysrc"."Data_2_7_3"."Enabled" = false; - "khotkeysrc"."Data_2_7_3"."Name" = "Up"; - "khotkeysrc"."Data_2_7_3"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_7_3Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_7_3Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_2_7_3Actions0"."Input" = "Alt+Up"; - "khotkeysrc"."Data_2_7_3Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_2_7_3Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_7_3Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_7_3Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_2_7_3Triggers"."TriggersCount" = 3; - "khotkeysrc"."Data_2_7_3Triggers0"."GesturePointData" = "0,0.0625,-0.5,0.5,1,0.0625,0.0625,-0.5,0.5,0.875,0.125,0.0625,-0.5,0.5,0.75,0.1875,0.0625,-0.5,0.5,0.625,0.25,0.0625,-0.5,0.5,0.5,0.3125,0.0625,-0.5,0.5,0.375,0.375,0.0625,-0.5,0.5,0.25,0.4375,0.0625,-0.5,0.5,0.125,0.5,0.0625,0.5,0.5,0,0.5625,0.0625,0.5,0.5,0.125,0.625,0.0625,0.5,0.5,0.25,0.6875,0.0625,0.5,0.5,0.375,0.75,0.0625,0.5,0.5,0.5,0.8125,0.0625,0.5,0.5,0.625,0.875,0.0625,0.5,0.5,0.75,0.9375,0.0625,0.5,0.5,0.875,1,0,0,0.5,1"; - "khotkeysrc"."Data_2_7_3Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_3Triggers1"."GesturePointData" = "0,0.0833333,-0.5,0.5,1,0.0833333,0.0833333,-0.5,0.5,0.875,0.166667,0.0833333,-0.5,0.5,0.75,0.25,0.0833333,-0.5,0.5,0.625,0.333333,0.0833333,-0.5,0.5,0.5,0.416667,0.0833333,-0.5,0.5,0.375,0.5,0.0833333,-0.5,0.5,0.25,0.583333,0.0833333,-0.5,0.5,0.125,0.666667,0.0833333,0.5,0.5,0,0.75,0.0833333,0.5,0.5,0.125,0.833333,0.0833333,0.5,0.5,0.25,0.916667,0.0833333,0.5,0.5,0.375,1,0,0,0.5,0.5"; - "khotkeysrc"."Data_2_7_3Triggers1"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_3Triggers2"."GesturePointData" = "0,0.0833333,-0.5,0.5,0.5,0.0833333,0.0833333,-0.5,0.5,0.375,0.166667,0.0833333,-0.5,0.5,0.25,0.25,0.0833333,-0.5,0.5,0.125,0.333333,0.0833333,0.5,0.5,0,0.416667,0.0833333,0.5,0.5,0.125,0.5,0.0833333,0.5,0.5,0.25,0.583333,0.0833333,0.5,0.5,0.375,0.666667,0.0833333,0.5,0.5,0.5,0.75,0.0833333,0.5,0.5,0.625,0.833333,0.0833333,0.5,0.5,0.75,0.916667,0.0833333,0.5,0.5,0.875,1,0,0,0.5,1"; - "khotkeysrc"."Data_2_7_3Triggers2"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_4"."Comment" = ""; - "khotkeysrc"."Data_2_7_4"."Enabled" = false; - "khotkeysrc"."Data_2_7_4"."Name" = "Reload"; - "khotkeysrc"."Data_2_7_4"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_7_4Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_7_4Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_2_7_4Actions0"."Input" = "F5"; - "khotkeysrc"."Data_2_7_4Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_2_7_4Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_7_4Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_7_4Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_2_7_4Triggers"."TriggersCount" = 3; - "khotkeysrc"."Data_2_7_4Triggers0"."GesturePointData" = "0,0.03125,0,0,1,0.03125,0.03125,0,0.125,1,0.0625,0.03125,0,0.25,1,0.09375,0.03125,0,0.375,1,0.125,0.03125,0,0.5,1,0.15625,0.03125,0,0.625,1,0.1875,0.03125,0,0.75,1,0.21875,0.03125,0,0.875,1,0.25,0.03125,-0.5,1,1,0.28125,0.03125,-0.5,1,0.875,0.3125,0.03125,-0.5,1,0.75,0.34375,0.03125,-0.5,1,0.625,0.375,0.03125,-0.5,1,0.5,0.40625,0.03125,-0.5,1,0.375,0.4375,0.03125,-0.5,1,0.25,0.46875,0.03125,-0.5,1,0.125,0.5,0.03125,1,1,0,0.53125,0.03125,1,0.875,0,0.5625,0.03125,1,0.75,0,0.59375,0.03125,1,0.625,0,0.625,0.03125,1,0.5,0,0.65625,0.03125,1,0.375,0,0.6875,0.03125,1,0.25,0,0.71875,0.03125,1,0.125,0,0.75,0.03125,0.5,0,0,0.78125,0.03125,0.5,0,0.125,0.8125,0.03125,0.5,0,0.25,0.84375,0.03125,0.5,0,0.375,0.875,0.03125,0.5,0,0.5,0.90625,0.03125,0.5,0,0.625,0.9375,0.03125,0.5,0,0.75,0.96875,0.03125,0.5,0,0.875,1,0,0,0,1"; - "khotkeysrc"."Data_2_7_4Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_4Triggers1"."GesturePointData" = "0,0.0277778,0,0,1,0.0277778,0.0277778,0,0.125,1,0.0555556,0.0277778,0,0.25,1,0.0833333,0.0277778,0,0.375,1,0.111111,0.0277778,0,0.5,1,0.138889,0.0277778,0,0.625,1,0.166667,0.0277778,0,0.75,1,0.194444,0.0277778,0,0.875,1,0.222222,0.0277778,-0.5,1,1,0.25,0.0277778,-0.5,1,0.875,0.277778,0.0277778,-0.5,1,0.75,0.305556,0.0277778,-0.5,1,0.625,0.333333,0.0277778,-0.5,1,0.5,0.361111,0.0277778,-0.5,1,0.375,0.388889,0.0277778,-0.5,1,0.25,0.416667,0.0277778,-0.5,1,0.125,0.444444,0.0277778,1,1,0,0.472222,0.0277778,1,0.875,0,0.5,0.0277778,1,0.75,0,0.527778,0.0277778,1,0.625,0,0.555556,0.0277778,1,0.5,0,0.583333,0.0277778,1,0.375,0,0.611111,0.0277778,1,0.25,0,0.638889,0.0277778,1,0.125,0,0.666667,0.0277778,0.5,0,0,0.694444,0.0277778,0.5,0,0.125,0.722222,0.0277778,0.5,0,0.25,0.75,0.0277778,0.5,0,0.375,0.777778,0.0277778,0.5,0,0.5,0.805556,0.0277778,0.5,0,0.625,0.833333,0.0277778,0.5,0,0.75,0.861111,0.0277778,0.5,0,0.875,0.888889,0.0277778,0,0,1,0.916667,0.0277778,0,0.125,1,0.944444,0.0277778,0,0.25,1,0.972222,0.0277778,0,0.375,1,1,0,0,0.5,1"; - "khotkeysrc"."Data_2_7_4Triggers1"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_7_4Triggers2"."GesturePointData" = "0,0.0277778,0.5,0,0.5,0.0277778,0.0277778,0.5,0,0.625,0.0555556,0.0277778,0.5,0,0.75,0.0833333,0.0277778,0.5,0,0.875,0.111111,0.0277778,0,0,1,0.138889,0.0277778,0,0.125,1,0.166667,0.0277778,0,0.25,1,0.194444,0.0277778,0,0.375,1,0.222222,0.0277778,0,0.5,1,0.25,0.0277778,0,0.625,1,0.277778,0.0277778,0,0.75,1,0.305556,0.0277778,0,0.875,1,0.333333,0.0277778,-0.5,1,1,0.361111,0.0277778,-0.5,1,0.875,0.388889,0.0277778,-0.5,1,0.75,0.416667,0.0277778,-0.5,1,0.625,0.444444,0.0277778,-0.5,1,0.5,0.472222,0.0277778,-0.5,1,0.375,0.5,0.0277778,-0.5,1,0.25,0.527778,0.0277778,-0.5,1,0.125,0.555556,0.0277778,1,1,0,0.583333,0.0277778,1,0.875,0,0.611111,0.0277778,1,0.75,0,0.638889,0.0277778,1,0.625,0,0.666667,0.0277778,1,0.5,0,0.694444,0.0277778,1,0.375,0,0.722222,0.0277778,1,0.25,0,0.75,0.0277778,1,0.125,0,0.777778,0.0277778,0.5,0,0,0.805556,0.0277778,0.5,0,0.125,0.833333,0.0277778,0.5,0,0.25,0.861111,0.0277778,0.5,0,0.375,0.888889,0.0277778,0.5,0,0.5,0.916667,0.0277778,0.5,0,0.625,0.944444,0.0277778,0.5,0,0.75,0.972222,0.0277778,0.5,0,0.875,1,0,0,0,1"; - "khotkeysrc"."Data_2_7_4Triggers2"."Type" = "GESTURE"; - "khotkeysrc"."Data_2_8"."Comment" = "After pressing Win+E (Tux+E) a WWW browser will be launched, and it will open http://www.kde.org . You may run all kind of commands you can run in minicli (Alt+F2)."; - "khotkeysrc"."Data_2_8"."Enabled" = false; - "khotkeysrc"."Data_2_8"."Name" = "Go to KDE Website"; - "khotkeysrc"."Data_2_8"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_2_8Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_2_8Actions0"."CommandURL" = "http://www.kde.org"; - "khotkeysrc"."Data_2_8Actions0"."Type" = "COMMAND_URL"; - "khotkeysrc"."Data_2_8Conditions"."Comment" = ""; - "khotkeysrc"."Data_2_8Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_2_8Triggers"."Comment" = "Simple_action"; - "khotkeysrc"."Data_2_8Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_2_8Triggers0"."Key" = "Meta+E"; - "khotkeysrc"."Data_2_8Triggers0"."Type" = "SHORTCUT"; - "khotkeysrc"."Data_2_8Triggers0"."Uuid" = "{af8f36c3-5682-4153-869f-fe61c53dd3c3}"; - "khotkeysrc"."Data_3"."Comment" = "Basic Konqueror gestures."; - "khotkeysrc"."Data_3"."DataCount" = 14; - "khotkeysrc"."Data_3"."Enabled" = true; - "khotkeysrc"."Data_3"."ImportId" = "konqueror_gestures_kde321"; - "khotkeysrc"."Data_3"."Name" = "Konqueror Gestures"; - "khotkeysrc"."Data_3"."SystemGroup" = 0; - "khotkeysrc"."Data_3"."Type" = "ACTION_DATA_GROUP"; - "khotkeysrc"."Data_3Conditions"."Comment" = "Konqueror window"; - "khotkeysrc"."Data_3Conditions"."ConditionsCount" = 1; - "khotkeysrc"."Data_3Conditions0"."Type" = "ACTIVE_WINDOW"; - "khotkeysrc"."Data_3Conditions0Window"."Comment" = "Konqueror"; - "khotkeysrc"."Data_3Conditions0Window"."WindowsCount" = 1; - "khotkeysrc"."Data_3Conditions0Window0"."Class" = "^konquerors"; - "khotkeysrc"."Data_3Conditions0Window0"."ClassType" = 3; - "khotkeysrc"."Data_3Conditions0Window0"."Comment" = "Konqueror"; - "khotkeysrc"."Data_3Conditions0Window0"."Role" = "konqueror-mainwindow#1"; - "khotkeysrc"."Data_3Conditions0Window0"."RoleType" = 0; - "khotkeysrc"."Data_3Conditions0Window0"."Title" = "file:/ - Konqueror"; - "khotkeysrc"."Data_3Conditions0Window0"."TitleType" = 0; - "khotkeysrc"."Data_3Conditions0Window0"."Type" = "SIMPLE"; - "khotkeysrc"."Data_3Conditions0Window0"."WindowTypes" = 1; - "khotkeysrc"."Data_3_1"."Comment" = "Press, move left, release."; - "khotkeysrc"."Data_3_1"."Enabled" = true; - "khotkeysrc"."Data_3_1"."Name" = "Back"; - "khotkeysrc"."Data_3_1"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_10"."Comment" = "Opera-style: Press, move up, release.\nNOTE: Conflicts with 'New Tab', and as such is disabled by default."; - "khotkeysrc"."Data_3_10"."Enabled" = false; - "khotkeysrc"."Data_3_10"."Name" = "Stop Loading"; - "khotkeysrc"."Data_3_10"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_10Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_10Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_10Actions0"."Input" = "Escape\n"; - "khotkeysrc"."Data_3_10Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_10Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_10Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_10Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_10Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_10Triggers0"."GesturePointData" = "0,0.125,-0.5,0.5,1,0.125,0.125,-0.5,0.5,0.875,0.25,0.125,-0.5,0.5,0.75,0.375,0.125,-0.5,0.5,0.625,0.5,0.125,-0.5,0.5,0.5,0.625,0.125,-0.5,0.5,0.375,0.75,0.125,-0.5,0.5,0.25,0.875,0.125,-0.5,0.5,0.125,1,0,0,0.5,0"; - "khotkeysrc"."Data_3_10Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_11"."Comment" = "Going up in URL/directory structure.\nMozilla-style: Press, move up, move left, move up, release."; - "khotkeysrc"."Data_3_11"."Enabled" = true; - "khotkeysrc"."Data_3_11"."Name" = "Up"; - "khotkeysrc"."Data_3_11"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_11Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_11Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_11Actions0"."Input" = "Alt+Up"; - "khotkeysrc"."Data_3_11Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_11Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_11Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_11Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_11Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_11Triggers0"."GesturePointData" = "0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,1,1,0.5,0.3125,0.0625,1,0.875,0.5,0.375,0.0625,1,0.75,0.5,0.4375,0.0625,1,0.625,0.5,0.5,0.0625,1,0.5,0.5,0.5625,0.0625,1,0.375,0.5,0.625,0.0625,1,0.25,0.5,0.6875,0.0625,1,0.125,0.5,0.75,0.0625,-0.5,0,0.5,0.8125,0.0625,-0.5,0,0.375,0.875,0.0625,-0.5,0,0.25,0.9375,0.0625,-0.5,0,0.125,1,0,0,0,0"; - "khotkeysrc"."Data_3_11Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_12"."Comment" = "Going up in URL/directory structure.\nOpera-style: Press, move up, move left, move up, release.\nNOTE: Conflicts with \"Activate Previous Tab\", and as such is disabled by default."; - "khotkeysrc"."Data_3_12"."Enabled" = false; - "khotkeysrc"."Data_3_12"."Name" = "Up #2"; - "khotkeysrc"."Data_3_12"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_12Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_12Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_12Actions0"."Input" = "Alt+Up\n"; - "khotkeysrc"."Data_3_12Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_12Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_12Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_12Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_12Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_12Triggers0"."GesturePointData" = "0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,-0.5,1,0.5,0.3125,0.0625,-0.5,1,0.375,0.375,0.0625,-0.5,1,0.25,0.4375,0.0625,-0.5,1,0.125,0.5,0.0625,1,1,0,0.5625,0.0625,1,0.875,0,0.625,0.0625,1,0.75,0,0.6875,0.0625,1,0.625,0,0.75,0.0625,1,0.5,0,0.8125,0.0625,1,0.375,0,0.875,0.0625,1,0.25,0,0.9375,0.0625,1,0.125,0,1,0,0,0,0"; - "khotkeysrc"."Data_3_12Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_13"."Comment" = "Press, move up, move right, release."; - "khotkeysrc"."Data_3_13"."Enabled" = true; - "khotkeysrc"."Data_3_13"."Name" = "Activate Next Tab"; - "khotkeysrc"."Data_3_13"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_13Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_13Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_13Actions0"."Input" = "Ctrl+.\n"; - "khotkeysrc"."Data_3_13Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_13Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_13Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_13Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_13Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_13Triggers0"."GesturePointData" = "0,0.0625,-0.5,0,1,0.0625,0.0625,-0.5,0,0.875,0.125,0.0625,-0.5,0,0.75,0.1875,0.0625,-0.5,0,0.625,0.25,0.0625,-0.5,0,0.5,0.3125,0.0625,-0.5,0,0.375,0.375,0.0625,-0.5,0,0.25,0.4375,0.0625,-0.5,0,0.125,0.5,0.0625,0,0,0,0.5625,0.0625,0,0.125,0,0.625,0.0625,0,0.25,0,0.6875,0.0625,0,0.375,0,0.75,0.0625,0,0.5,0,0.8125,0.0625,0,0.625,0,0.875,0.0625,0,0.75,0,0.9375,0.0625,0,0.875,0,1,0,0,1,0"; - "khotkeysrc"."Data_3_13Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_14"."Comment" = "Press, move up, move left, release."; - "khotkeysrc"."Data_3_14"."Enabled" = true; - "khotkeysrc"."Data_3_14"."Name" = "Activate Previous Tab"; - "khotkeysrc"."Data_3_14"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_14Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_14Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_14Actions0"."Input" = "Ctrl+,"; - "khotkeysrc"."Data_3_14Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_14Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_14Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_14Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_14Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_14Triggers0"."GesturePointData" = "0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,-0.5,1,0.5,0.3125,0.0625,-0.5,1,0.375,0.375,0.0625,-0.5,1,0.25,0.4375,0.0625,-0.5,1,0.125,0.5,0.0625,1,1,0,0.5625,0.0625,1,0.875,0,0.625,0.0625,1,0.75,0,0.6875,0.0625,1,0.625,0,0.75,0.0625,1,0.5,0,0.8125,0.0625,1,0.375,0,0.875,0.0625,1,0.25,0,0.9375,0.0625,1,0.125,0,1,0,0,0,0"; - "khotkeysrc"."Data_3_14Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_1Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_1Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_1Actions0"."Input" = "Alt+Left"; - "khotkeysrc"."Data_3_1Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_1Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_1Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_1Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_1Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_1Triggers0"."GesturePointData" = "0,0.125,1,1,0.5,0.125,0.125,1,0.875,0.5,0.25,0.125,1,0.75,0.5,0.375,0.125,1,0.625,0.5,0.5,0.125,1,0.5,0.5,0.625,0.125,1,0.375,0.5,0.75,0.125,1,0.25,0.5,0.875,0.125,1,0.125,0.5,1,0,0,0,0.5"; - "khotkeysrc"."Data_3_1Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_2"."Comment" = "Press, move down, move up, move down, release."; - "khotkeysrc"."Data_3_2"."Enabled" = true; - "khotkeysrc"."Data_3_2"."Name" = "Duplicate Tab"; - "khotkeysrc"."Data_3_2"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_2Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_2Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_2Actions0"."Input" = "Ctrl+Shift+D\n"; - "khotkeysrc"."Data_3_2Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_2Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_2Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_2Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_2Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_2Triggers0"."GesturePointData" = "0,0.0416667,0.5,0.5,0,0.0416667,0.0416667,0.5,0.5,0.125,0.0833333,0.0416667,0.5,0.5,0.25,0.125,0.0416667,0.5,0.5,0.375,0.166667,0.0416667,0.5,0.5,0.5,0.208333,0.0416667,0.5,0.5,0.625,0.25,0.0416667,0.5,0.5,0.75,0.291667,0.0416667,0.5,0.5,0.875,0.333333,0.0416667,-0.5,0.5,1,0.375,0.0416667,-0.5,0.5,0.875,0.416667,0.0416667,-0.5,0.5,0.75,0.458333,0.0416667,-0.5,0.5,0.625,0.5,0.0416667,-0.5,0.5,0.5,0.541667,0.0416667,-0.5,0.5,0.375,0.583333,0.0416667,-0.5,0.5,0.25,0.625,0.0416667,-0.5,0.5,0.125,0.666667,0.0416667,0.5,0.5,0,0.708333,0.0416667,0.5,0.5,0.125,0.75,0.0416667,0.5,0.5,0.25,0.791667,0.0416667,0.5,0.5,0.375,0.833333,0.0416667,0.5,0.5,0.5,0.875,0.0416667,0.5,0.5,0.625,0.916667,0.0416667,0.5,0.5,0.75,0.958333,0.0416667,0.5,0.5,0.875,1,0,0,0.5,1"; - "khotkeysrc"."Data_3_2Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_3"."Comment" = "Press, move down, move up, release."; - "khotkeysrc"."Data_3_3"."Enabled" = true; - "khotkeysrc"."Data_3_3"."Name" = "Duplicate Window"; - "khotkeysrc"."Data_3_3"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_3Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_3Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_3Actions0"."Input" = "Ctrl+D\n"; - "khotkeysrc"."Data_3_3Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_3Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_3Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_3Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_3Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_3Triggers0"."GesturePointData" = "0,0.0625,0.5,0.5,0,0.0625,0.0625,0.5,0.5,0.125,0.125,0.0625,0.5,0.5,0.25,0.1875,0.0625,0.5,0.5,0.375,0.25,0.0625,0.5,0.5,0.5,0.3125,0.0625,0.5,0.5,0.625,0.375,0.0625,0.5,0.5,0.75,0.4375,0.0625,0.5,0.5,0.875,0.5,0.0625,-0.5,0.5,1,0.5625,0.0625,-0.5,0.5,0.875,0.625,0.0625,-0.5,0.5,0.75,0.6875,0.0625,-0.5,0.5,0.625,0.75,0.0625,-0.5,0.5,0.5,0.8125,0.0625,-0.5,0.5,0.375,0.875,0.0625,-0.5,0.5,0.25,0.9375,0.0625,-0.5,0.5,0.125,1,0,0,0.5,0"; - "khotkeysrc"."Data_3_3Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_4"."Comment" = "Press, move right, release."; - "khotkeysrc"."Data_3_4"."Enabled" = true; - "khotkeysrc"."Data_3_4"."Name" = "Forward"; - "khotkeysrc"."Data_3_4"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_4Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_4Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_4Actions0"."Input" = "Alt+Right"; - "khotkeysrc"."Data_3_4Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_4Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_4Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_4Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_4Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_4Triggers0"."GesturePointData" = "0,0.125,0,0,0.5,0.125,0.125,0,0.125,0.5,0.25,0.125,0,0.25,0.5,0.375,0.125,0,0.375,0.5,0.5,0.125,0,0.5,0.5,0.625,0.125,0,0.625,0.5,0.75,0.125,0,0.75,0.5,0.875,0.125,0,0.875,0.5,1,0,0,1,0.5"; - "khotkeysrc"."Data_3_4Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_5"."Comment" = "Press, move down, move half up, move right, move down, release.\n(Drawing a lowercase 'h'.)"; - "khotkeysrc"."Data_3_5"."Enabled" = true; - "khotkeysrc"."Data_3_5"."Name" = "Home"; - "khotkeysrc"."Data_3_5"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_5Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_5Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_5Actions0"."Input" = "Alt+Home\n"; - "khotkeysrc"."Data_3_5Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_5Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_5Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_5Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_5Triggers"."TriggersCount" = 2; - "khotkeysrc"."Data_3_5Triggers0"."GesturePointData" = "0,0.0461748,0.5,0,0,0.0461748,0.0461748,0.5,0,0.125,0.0923495,0.0461748,0.5,0,0.25,0.138524,0.0461748,0.5,0,0.375,0.184699,0.0461748,0.5,0,0.5,0.230874,0.0461748,0.5,0,0.625,0.277049,0.0461748,0.5,0,0.75,0.323223,0.0461748,0.5,0,0.875,0.369398,0.065301,-0.25,0,1,0.434699,0.065301,-0.25,0.125,0.875,0.5,0.065301,-0.25,0.25,0.75,0.565301,0.065301,-0.25,0.375,0.625,0.630602,0.0461748,0,0.5,0.5,0.676777,0.0461748,0,0.625,0.5,0.722951,0.0461748,0,0.75,0.5,0.769126,0.0461748,0,0.875,0.5,0.815301,0.0461748,0.5,1,0.5,0.861476,0.0461748,0.5,1,0.625,0.90765,0.0461748,0.5,1,0.75,0.953825,0.0461748,0.5,1,0.875,1,0,0,1,1"; - "khotkeysrc"."Data_3_5Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_5Triggers1"."GesturePointData" = "0,0.0416667,0.5,0,0,0.0416667,0.0416667,0.5,0,0.125,0.0833333,0.0416667,0.5,0,0.25,0.125,0.0416667,0.5,0,0.375,0.166667,0.0416667,0.5,0,0.5,0.208333,0.0416667,0.5,0,0.625,0.25,0.0416667,0.5,0,0.75,0.291667,0.0416667,0.5,0,0.875,0.333333,0.0416667,-0.5,0,1,0.375,0.0416667,-0.5,0,0.875,0.416667,0.0416667,-0.5,0,0.75,0.458333,0.0416667,-0.5,0,0.625,0.5,0.0416667,0,0,0.5,0.541667,0.0416667,0,0.125,0.5,0.583333,0.0416667,0,0.25,0.5,0.625,0.0416667,0,0.375,0.5,0.666667,0.0416667,0,0.5,0.5,0.708333,0.0416667,0,0.625,0.5,0.75,0.0416667,0,0.75,0.5,0.791667,0.0416667,0,0.875,0.5,0.833333,0.0416667,0.5,1,0.5,0.875,0.0416667,0.5,1,0.625,0.916667,0.0416667,0.5,1,0.75,0.958333,0.0416667,0.5,1,0.875,1,0,0,1,1"; - "khotkeysrc"."Data_3_5Triggers1"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_6"."Comment" = "Press, move right, move down, move right, release.\nMozilla-style: Press, move down, move right, release."; - "khotkeysrc"."Data_3_6"."Enabled" = true; - "khotkeysrc"."Data_3_6"."Name" = "Close Tab"; - "khotkeysrc"."Data_3_6"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_6Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_6Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_6Actions0"."Input" = "Ctrl+W\n"; - "khotkeysrc"."Data_3_6Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_6Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_6Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_6Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_6Triggers"."TriggersCount" = 2; - "khotkeysrc"."Data_3_6Triggers0"."GesturePointData" = "0,0.0625,0,0,0,0.0625,0.0625,0,0.125,0,0.125,0.0625,0,0.25,0,0.1875,0.0625,0,0.375,0,0.25,0.0625,0.5,0.5,0,0.3125,0.0625,0.5,0.5,0.125,0.375,0.0625,0.5,0.5,0.25,0.4375,0.0625,0.5,0.5,0.375,0.5,0.0625,0.5,0.5,0.5,0.5625,0.0625,0.5,0.5,0.625,0.625,0.0625,0.5,0.5,0.75,0.6875,0.0625,0.5,0.5,0.875,0.75,0.0625,0,0.5,1,0.8125,0.0625,0,0.625,1,0.875,0.0625,0,0.75,1,0.9375,0.0625,0,0.875,1,1,0,0,1,1"; - "khotkeysrc"."Data_3_6Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_6Triggers1"."GesturePointData" = "0,0.0625,0.5,0,0,0.0625,0.0625,0.5,0,0.125,0.125,0.0625,0.5,0,0.25,0.1875,0.0625,0.5,0,0.375,0.25,0.0625,0.5,0,0.5,0.3125,0.0625,0.5,0,0.625,0.375,0.0625,0.5,0,0.75,0.4375,0.0625,0.5,0,0.875,0.5,0.0625,0,0,1,0.5625,0.0625,0,0.125,1,0.625,0.0625,0,0.25,1,0.6875,0.0625,0,0.375,1,0.75,0.0625,0,0.5,1,0.8125,0.0625,0,0.625,1,0.875,0.0625,0,0.75,1,0.9375,0.0625,0,0.875,1,1,0,0,1,1"; - "khotkeysrc"."Data_3_6Triggers1"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_7"."Comment" = "Press, move up, release.\nConflicts with Opera-style 'Up #2', which is disabled by default."; - "khotkeysrc"."Data_3_7"."Enabled" = true; - "khotkeysrc"."Data_3_7"."Name" = "New Tab"; - "khotkeysrc"."Data_3_7"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_7Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_7Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_7Actions0"."Input" = "Ctrl+Shift+N"; - "khotkeysrc"."Data_3_7Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_7Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_7Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_7Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_7Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_7Triggers0"."GesturePointData" = "0,0.125,-0.5,0.5,1,0.125,0.125,-0.5,0.5,0.875,0.25,0.125,-0.5,0.5,0.75,0.375,0.125,-0.5,0.5,0.625,0.5,0.125,-0.5,0.5,0.5,0.625,0.125,-0.5,0.5,0.375,0.75,0.125,-0.5,0.5,0.25,0.875,0.125,-0.5,0.5,0.125,1,0,0,0.5,0"; - "khotkeysrc"."Data_3_7Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_8"."Comment" = "Press, move down, release."; - "khotkeysrc"."Data_3_8"."Enabled" = true; - "khotkeysrc"."Data_3_8"."Name" = "New Window"; - "khotkeysrc"."Data_3_8"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_8Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_8Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_8Actions0"."Input" = "Ctrl+N\n"; - "khotkeysrc"."Data_3_8Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_8Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_8Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_8Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_8Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_8Triggers0"."GesturePointData" = "0,0.125,0.5,0.5,0,0.125,0.125,0.5,0.5,0.125,0.25,0.125,0.5,0.5,0.25,0.375,0.125,0.5,0.5,0.375,0.5,0.125,0.5,0.5,0.5,0.625,0.125,0.5,0.5,0.625,0.75,0.125,0.5,0.5,0.75,0.875,0.125,0.5,0.5,0.875,1,0,0,0.5,1"; - "khotkeysrc"."Data_3_8Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."Data_3_9"."Comment" = "Press, move up, move down, release."; - "khotkeysrc"."Data_3_9"."Enabled" = true; - "khotkeysrc"."Data_3_9"."Name" = "Reload"; - "khotkeysrc"."Data_3_9"."Type" = "SIMPLE_ACTION_DATA"; - "khotkeysrc"."Data_3_9Actions"."ActionsCount" = 1; - "khotkeysrc"."Data_3_9Actions0"."DestinationWindow" = 2; - "khotkeysrc"."Data_3_9Actions0"."Input" = "F5"; - "khotkeysrc"."Data_3_9Actions0"."Type" = "KEYBOARD_INPUT"; - "khotkeysrc"."Data_3_9Conditions"."Comment" = ""; - "khotkeysrc"."Data_3_9Conditions"."ConditionsCount" = 0; - "khotkeysrc"."Data_3_9Triggers"."Comment" = "Gesture_triggers"; - "khotkeysrc"."Data_3_9Triggers"."TriggersCount" = 1; - "khotkeysrc"."Data_3_9Triggers0"."GesturePointData" = "0,0.0625,-0.5,0.5,1,0.0625,0.0625,-0.5,0.5,0.875,0.125,0.0625,-0.5,0.5,0.75,0.1875,0.0625,-0.5,0.5,0.625,0.25,0.0625,-0.5,0.5,0.5,0.3125,0.0625,-0.5,0.5,0.375,0.375,0.0625,-0.5,0.5,0.25,0.4375,0.0625,-0.5,0.5,0.125,0.5,0.0625,0.5,0.5,0,0.5625,0.0625,0.5,0.5,0.125,0.625,0.0625,0.5,0.5,0.25,0.6875,0.0625,0.5,0.5,0.375,0.75,0.0625,0.5,0.5,0.5,0.8125,0.0625,0.5,0.5,0.625,0.875,0.0625,0.5,0.5,0.75,0.9375,0.0625,0.5,0.5,0.875,1,0,0,0.5,1"; - "khotkeysrc"."Data_3_9Triggers0"."Type" = "GESTURE"; - "khotkeysrc"."General"."AllowKDEAppsToRememberWindowPositions[$d]" = ""; - "khotkeysrc"."General"."BrowserApplication[$d]" = ""; - "khotkeysrc"."General"."ColorSchemeHash[$d]" = ""; - "khotkeysrc"."General"."ColorScheme[$d]" = ""; - "khotkeysrc"."Gestures"."Disabled" = true; - "khotkeysrc"."Gestures"."MouseButton" = 2; - "khotkeysrc"."Gestures"."Timeout" = 300; - "khotkeysrc"."GesturesExclude"."Comment" = ""; - "khotkeysrc"."GesturesExclude"."WindowsCount" = 0; - "khotkeysrc"."Icons"."Theme[$d]" = ""; - "khotkeysrc"."KDE"."AnimationDurationFactor[$d]" = ""; - "khotkeysrc"."KDE"."LookAndFeelPackage[$d]" = ""; - "khotkeysrc"."KDE"."ShowDeleteCommand[$d]" = ""; - "khotkeysrc"."KDE"."SingleClick[$d]" = ""; - "khotkeysrc"."KDE"."widgetStyle[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Allow Expansion[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Automatically select filename extension[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Breadcrumb Navigation[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Decoration position[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."LocationCombo Completionmode[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."PathCombo Completionmode[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Show Bookmarks[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Show Full Path[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Show Inline Previews[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Show Preview[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Show Speedbar[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Show hidden files[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Sort by[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Sort directories first[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Sort hidden files last[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Sort reversed[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."Speedbar Width[$d]" = ""; - "khotkeysrc"."KFileDialog Settings"."View Style[$d]" = ""; - "khotkeysrc"."KShortcutsDialog Settings"."Dialog Size[$d]" = ""; - "khotkeysrc"."Main"."AlreadyImported" = "defaults,kde32b1,konqueror_gestures_kde321"; - "khotkeysrc"."Main"."Disabled" = false; - "khotkeysrc"."PreviewSettings"."MaximumRemoteSize[$d]" = ""; - "khotkeysrc"."Voice"."Shortcut" = ""; - "khotkeysrc"."WM"."activeBackground[$d]" = ""; - "khotkeysrc"."WM"."activeBlend[$d]" = ""; - "khotkeysrc"."WM"."activeForeground[$d]" = ""; - "khotkeysrc"."WM"."inactiveBackground[$d]" = ""; - "khotkeysrc"."WM"."inactiveBlend[$d]" = ""; - "khotkeysrc"."WM"."inactiveForeground[$d]" = ""; - "kiorc"."Confirmations"."ConfirmDelete" = true; - "kiorc"."Confirmations"."ConfirmEmptyTrash" = true; - "kiorc"."Confirmations"."ConfirmTrash" = false; - "kiorc"."Executable scripts"."behaviourOnLaunch" = "alwaysAsk"; - "krunnerrc"."Plugins"."baloosearchEnabled" = false; - "krunnerrc"."Plugins"."locationsEnabled" = true; - "krunnerrc"."Plugins"."placesEnabled" = true; - "krunnerrc"."Plugins"."recentdocumentsEnabled" = true; - "kservicemenurc"."Show"."compressfileitemaction" = true; - "kservicemenurc"."Show"."extractfileitemaction" = true; - "kservicemenurc"."Show"."forgetfileitemaction" = true; - "kservicemenurc"."Show"."installFont" = true; - "kservicemenurc"."Show"."kactivitymanagerd_fileitem_linking_plugin" = true; - "kservicemenurc"."Show"."kdeconnectfileitemaction" = true; - "kservicemenurc"."Show"."kio-admin" = true; - "kservicemenurc"."Show"."mountisoaction" = true; - "kservicemenurc"."Show"."nextclouddolphinactionplugin" = true; - "kservicemenurc"."Show"."runInKonsole" = true; - "kservicemenurc"."Show"."setAsWallpaper" = true; - "kservicemenurc"."Show"."slideshowfileitemaction" = true; - "kservicemenurc"."Show"."tagsfileitemaction" = true; - "kwalletrc"."Wallet"."First Use" = false; - "kwinrc"."Desktops"."Id_1" = "d1e5e218-1fd9-4946-aa47-dab2f5aac755"; - "kwinrc"."Desktops"."Id_2" = "389927fc-9c76-4f84-ae0d-011cf76868e6"; - "kwinrc"."Desktops"."Id_3" = "78f9d3d6-d0dd-4fd5-89fc-0157ada3dff5"; - "kwinrc"."Desktops"."Id_4" = "a0a9ef6d-975c-4379-8ca1-265e1938d8d1"; - "kwinrc"."Desktops"."Number" = 4; - "kwinrc"."Desktops"."Rows" = 2; - "kwinrc"."Effect-diminactive"."Strength" = 15; - "kwinrc"."Effect-magiclamp"."AnimationDuration" = 20; - "kwinrc"."NightColor"."Active" = true; - "kwinrc"."NightColor"."LatitudeFixed" = 52.31865273558926; - "kwinrc"."NightColor"."LongitudeFixed" = 5.44; - "kwinrc"."NightColor"."Mode" = "Location"; - "kwinrc"."NightColor"."NightTemperature" = 1400; - "kwinrc"."Plugins"."diminactiveEnabled" = true; - "kwinrc"."Plugins"."dimscreenEnabled" = true; - "kwinrc"."Plugins"."wobblywindowsEnabled" = true; - "kwinrc"."Tiling"."padding" = 4; - "kwinrc"."Tiling.5242ae1a-0a81-5d7b-ba61-2512b597a159"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}"; - "kwinrc"."Tiling.57cc57cb-6089-56ec-afba-00ccd06d5508"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}"; - "kwinrc"."Tiling.5c337d24-acf0-5ac2-9082-ce9cb012bc2c"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"layoutDirection\":\"vertical\",\"tiles\":[{\"height\":0.5,\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.5},{\"width\":0.5}]},{\"height\":0.5,\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.5},{\"width\":0.5}]}],\"width\":1}]}"; - "kwinrc"."Xwayland"."Scale" = 1; - "kxkbrc"."Layout"."Options" = "compose:caps"; - "kxkbrc"."Layout"."ResetOldOptions" = true; - "plasma-localerc"."Formats"."LANG" = "en_US.UTF-8"; - "plasma-localerc"."Formats"."LC_ADDRESS" = "nl_NL.UTF-8"; - "plasma-localerc"."Formats"."LC_MEASUREMENT" = "nl_NL.UTF-8"; - "plasma-localerc"."Formats"."LC_MONETARY" = "nl_NL.UTF-8"; - "plasma-localerc"."Formats"."LC_NAME" = "nl_NL.UTF-8"; - "plasma-localerc"."Formats"."LC_NUMERIC" = "nl_NL.UTF-8"; - "plasma-localerc"."Formats"."LC_PAPER" = "nl_NL.UTF-8"; - "plasma-localerc"."Formats"."LC_TELEPHONE" = "nl_NL.UTF-8"; - "plasma-localerc"."Formats"."LC_TIME" = "en_DK.UTF-8"; - "systemsettingsrc"."KFileDialog Settings"."detailViewIconSize" = 16; + "baloofilerc"."General"."dbVersion".value = 2; + "baloofilerc"."General"."exclude filters".value = "*~,*.part,*.o,*.la,*.lo,*.loT,*.moc,moc_*.cpp,qrc_*.cpp,ui_*.h,cmake_install.cmake,CMakeCache.txt,CTestTestfile.cmake,libtool,config.status,confdefs.h,autom4te,conftest,confstat,Makefile.am,*.gcode,.ninja_deps,.ninja_log,build.ninja,*.csproj,*.m4,*.rej,*.gmo,*.pc,*.omf,*.aux,*.tmp,*.po,*.vm*,*.nvram,*.rcore,*.swp,*.swap,lzo,litmain.sh,*.orig,.histfile.*,.xsession-errors*,*.map,*.so,*.a,*.db,*.qrc,*.ini,*.init,*.img,*.vdi,*.vbox*,vbox.log,*.qcow2,*.vmdk,*.vhd,*.vhdx,*.sql,*.sql.gz,*.ytdl,*.class,*.pyc,*.pyo,*.elc,*.qmlc,*.jsc,*.fastq,*.fq,*.gb,*.fasta,*.fna,*.gbff,*.faa,po,CVS,.svn,.git,_darcs,.bzr,.hg,CMakeFiles,CMakeTmp,CMakeTmpQmake,.moc,.obj,.pch,.uic,.npm,.yarn,.yarn-cache,__pycache__,node_modules,node_packages,nbproject,.venv,venv,core-dumps,lost+found"; + "baloofilerc"."General"."exclude filters version".value = 8; + "dolphinrc"."ExtractDialog"."1536x864 screen: Height".value = 560; + "dolphinrc"."ExtractDialog"."1536x864 screen: Width".value = 1024; + "dolphinrc"."ExtractDialog"."DirHistory[$e]".value = "/home/"; + "dolphinrc"."General"."RememberOpenedTabs".value = false; + "dolphinrc"."IconsMode"."PreviewSize".value = 80; + "dolphinrc"."KFileDialog Settings"."Places Icons Auto-resize".value = false; + "dolphinrc"."KFileDialog Settings"."Places Icons Static Size".value = 22; + "dolphinrc"."KFileDialog Settings"."detailViewIconSize".value = 16; + "dolphinrc"."PreviewSettings"."Plugins".value = "mobithumbnail,fontthumbnail,ebookthumbnail,kraorathumbnail,jpegthumbnail,windowsexethumbnail,comicbookthumbnail,djvuthumbnail,opendocumentthumbnail,windowsimagethumbnail,exrthumbnail,audiothumbnail,cursorthumbnail,svgthumbnail,blenderthumbnail,gsthumbnail,rawthumbnail,ffmpegthumbs,imagethumbnail,directorythumbnail"; + "kactivitymanagerdrc"."activities"."a2cd7f51-1f1f-47a8-9544-a4c401f57a12".value = "Default"; + "kactivitymanagerdrc"."main"."currentActivity".value = "a2cd7f51-1f1f-47a8-9544-a4c401f57a12"; + "kcminputrc"."Libinput.1739.30383.CUST0001:00 06CB:76AF Touchpad"."MiddleButtonEmulation".value = true; + "kcminputrc"."Libinput.1739.30383.CUST0001:00 06CB:76AF Touchpad"."NaturalScroll".value = true; + "kcminputrc"."Libinput.1739.30383.CUST0001:00 06CB:76AF Touchpad"."TapToClick".value = true; + "kcminputrc"."Libinput/1739/30383/CUST0001:00 06CB:76AF Touchpad"."MiddleButtonEmulation".value = true; + "kcminputrc"."Libinput/1739/30383/CUST0001:00 06CB:76AF Touchpad"."NaturalScroll".value = true; + "kcminputrc"."Libinput/1739/30383/CUST0001:00 06CB:76AF Touchpad"."TapToClick".value = true; + "kcminputrc"."Tmp"."update_info".value = "delete_cursor_old_default_size.upd:DeleteCursorOldDefaultSize"; + "kded5rc"."Module-browserintegrationreminder"."autoload".value = false; + "kded5rc"."Module-device_automounter"."autoload".value = false; + "kded5rc"."PlasmaBrowserIntegration"."shownCount".value = 1; + "kdeglobals"."General"."AccentColor".value = "184,117,220"; + "kdeglobals"."General"."AllowKDEAppsToRememberWindowPositions".value = true; + "kdeglobals"."General"."BrowserApplication".value = "firefox.desktop"; + "kdeglobals"."General"."LastUsedCustomAccentColor".value = "184,117,220"; + "kdeglobals"."KDE"."AnimationDurationFactor".value = 0.7071067811865475; + "kdeglobals"."KDE"."ShowDeleteCommand".value = false; + "kdeglobals"."KDE"."SingleClick".value = false; + "kdeglobals"."KFileDialog Settings"."Allow Expansion".value = false; + "kdeglobals"."KFileDialog Settings"."Automatically select filename extension".value = true; + "kdeglobals"."KFileDialog Settings"."Breadcrumb Navigation".value = false; + "kdeglobals"."KFileDialog Settings"."Decoration position".value = 2; + "kdeglobals"."KFileDialog Settings"."LocationCombo Completionmode".value = 5; + "kdeglobals"."KFileDialog Settings"."PathCombo Completionmode".value = 5; + "kdeglobals"."KFileDialog Settings"."Show Bookmarks".value = false; + "kdeglobals"."KFileDialog Settings"."Show Full Path".value = false; + "kdeglobals"."KFileDialog Settings"."Show Inline Previews".value = true; + "kdeglobals"."KFileDialog Settings"."Show Preview".value = false; + "kdeglobals"."KFileDialog Settings"."Show Speedbar".value = true; + "kdeglobals"."KFileDialog Settings"."Show hidden files".value = false; + "kdeglobals"."KFileDialog Settings"."Sort by".value = "Date"; + "kdeglobals"."KFileDialog Settings"."Sort directories first".value = true; + "kdeglobals"."KFileDialog Settings"."Sort hidden files last".value = false; + "kdeglobals"."KFileDialog Settings"."Sort reversed".value = false; + "kdeglobals"."KFileDialog Settings"."Speedbar Width".value = 138; + "kdeglobals"."KFileDialog Settings"."View Style".value = "DetailTree"; + "kdeglobals"."KShortcutsDialog Settings"."Dialog Size".value = "600,480"; + "kdeglobals"."PreviewSettings"."MaximumRemoteSize".value = 0; + "kdeglobals"."WM"."activeBackground".value = "49,54,59"; + "kdeglobals"."WM"."activeBlend".value = "252,252,252"; + "kdeglobals"."WM"."activeForeground".value = "252,252,252"; + "kdeglobals"."WM"."inactiveBackground".value = "42,46,50"; + "kdeglobals"."WM"."inactiveBlend".value = "161,169,177"; + "kdeglobals"."WM"."inactiveForeground".value = "161,169,177"; + "kglobalshortcutsrc"."ActivityManager"."_k_friendly_name".value = "Activity Manager"; + "kglobalshortcutsrc"."KDE Keyboard Layout Switcher"."_k_friendly_name".value = "Keyboard Layout Switcher"; + "kglobalshortcutsrc"."kaccess"."_k_friendly_name".value = "Accessibility"; + "kglobalshortcutsrc"."kcm_touchpad"."_k_friendly_name".value = "Touchpad"; + "kglobalshortcutsrc"."khotkeys"."_k_friendly_name".value = "Custom Shortcuts Service"; + "kglobalshortcutsrc"."kmix"."_k_friendly_name".value = "Audio Volume"; + "kglobalshortcutsrc"."ksmserver"."_k_friendly_name".value = "Session Management"; + "kglobalshortcutsrc"."kwin"."_k_friendly_name".value = "KWin"; + "kglobalshortcutsrc"."mediacontrol"."_k_friendly_name".value = "Media Controller"; + "kglobalshortcutsrc"."org_kde_powerdevil"."_k_friendly_name".value = "KDE Power Management System"; + "kglobalshortcutsrc"."plasmashell"."_k_friendly_name".value = "plasmashell"; + "khotkeysrc"."Data"."DataCount".value = 3; + "khotkeysrc"."Data_1"."Comment".value = "KMenuEdit Global Shortcuts"; + "khotkeysrc"."Data_1"."DataCount".value = 1; + "khotkeysrc"."Data_1"."Enabled".value = true; + "khotkeysrc"."Data_1"."Name".value = "KMenuEdit"; + "khotkeysrc"."Data_1"."SystemGroup".value = 1; + "khotkeysrc"."Data_1"."Type".value = "ACTION_DATA_GROUP"; + "khotkeysrc"."Data_1Conditions"."Comment".value = ""; + "khotkeysrc"."Data_1Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_1_1"."Comment".value = "Comment"; + "khotkeysrc"."Data_1_1"."Enabled".value = true; + "khotkeysrc"."Data_1_1"."Name".value = "Search"; + "khotkeysrc"."Data_1_1"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_1_1Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_1_1Actions0"."CommandURL".value = "http://google.com"; + "khotkeysrc"."Data_1_1Actions0"."Type".value = "COMMAND_URL"; + "khotkeysrc"."Data_1_1Conditions"."Comment".value = ""; + "khotkeysrc"."Data_1_1Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_1_1Triggers"."Comment".value = "Simple_action"; + "khotkeysrc"."Data_1_1Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_1_1Triggers0"."Key".value = ""; + "khotkeysrc"."Data_1_1Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_1_1Triggers0"."Uuid".value = "{d03619b6-9b3c-48cc-9d9c-a2aadb485550}"; + "khotkeysrc"."Data_2"."Comment".value = "This group contains various examples demonstrating most of the features of KHotkeys. (Note that this group and all its actions are disabled by default.)"; + "khotkeysrc"."Data_2"."DataCount".value = 8; + "khotkeysrc"."Data_2"."Enabled".value = false; + "khotkeysrc"."Data_2"."ImportId".value = "kde32b1"; + "khotkeysrc"."Data_2"."Name".value = "Examples"; + "khotkeysrc"."Data_2"."SystemGroup".value = 0; + "khotkeysrc"."Data_2"."Type".value = "ACTION_DATA_GROUP"; + "khotkeysrc"."Data_2Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_1"."Comment".value = "After pressing Ctrl+Alt+I, the KSIRC window will be activated, if it exists. Simple."; + "khotkeysrc"."Data_2_1"."Enabled".value = false; + "khotkeysrc"."Data_2_1"."Name".value = "Activate KSIRC Window"; + "khotkeysrc"."Data_2_1"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_1Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_1Actions0"."Type".value = "ACTIVATE_WINDOW"; + "khotkeysrc"."Data_2_1Actions0Window"."Comment".value = "KSIRC window"; + "khotkeysrc"."Data_2_1Actions0Window"."WindowsCount".value = 1; + "khotkeysrc"."Data_2_1Actions0Window0"."Class".value = "ksirc"; + "khotkeysrc"."Data_2_1Actions0Window0"."ClassType".value = 1; + "khotkeysrc"."Data_2_1Actions0Window0"."Comment".value = "KSIRC"; + "khotkeysrc"."Data_2_1Actions0Window0"."Role".value = ""; + "khotkeysrc"."Data_2_1Actions0Window0"."RoleType".value = 0; + "khotkeysrc"."Data_2_1Actions0Window0"."Title".value = ""; + "khotkeysrc"."Data_2_1Actions0Window0"."TitleType".value = 0; + "khotkeysrc"."Data_2_1Actions0Window0"."Type".value = "SIMPLE"; + "khotkeysrc"."Data_2_1Actions0Window0"."WindowTypes".value = 33; + "khotkeysrc"."Data_2_1Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_1Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_1Triggers"."Comment".value = "Simple_action"; + "khotkeysrc"."Data_2_1Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_2_1Triggers0"."Key".value = "Ctrl+Alt+I"; + "khotkeysrc"."Data_2_1Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_2_1Triggers0"."Uuid".value = "{edd7522b-b1b3-4273-838a-358ee66356b2}"; + "khotkeysrc"."Data_2_2"."Comment".value = "After pressing Alt+Ctrl+H the input of 'Hello' will be simulated, as if you typed it. This is especially useful if you have call to frequently type a word (for instance, 'unsigned'). Every keypress in the input is separated by a colon ':'. Note that the keypresses literally mean keypresses, so you have to write what you would press on the keyboard. In the table below, the left column shows the input and the right column shows what to type.\n\n\"enter\" (i.e. new line) Enter or Return\na (i.e. small a) A\nA (i.e. capital a) Shift+A\n: (colon) Shift+;\n' ' (space) Space"; + "khotkeysrc"."Data_2_2"."Enabled".value = false; + "khotkeysrc"."Data_2_2"."Name".value = "Type 'Hello'"; + "khotkeysrc"."Data_2_2"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_2Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_2Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_2_2Actions0"."Input".value = "Shift+H:E:L:L:O\n"; + "khotkeysrc"."Data_2_2Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_2_2Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_2Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_2Triggers"."Comment".value = "Simple_action"; + "khotkeysrc"."Data_2_2Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_2_2Triggers0"."Key".value = "Ctrl+Alt+H"; + "khotkeysrc"."Data_2_2Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_2_2Triggers0"."Uuid".value = "{fd8182a4-81c3-4540-8e28-f7e5e72585c5}"; + "khotkeysrc"."Data_2_3"."Comment".value = "This action runs Konsole, after pressing Ctrl+Alt+T."; + "khotkeysrc"."Data_2_3"."Enabled".value = false; + "khotkeysrc"."Data_2_3"."Name".value = "Run Konsole"; + "khotkeysrc"."Data_2_3"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_3Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_3Actions0"."CommandURL".value = "konsole"; + "khotkeysrc"."Data_2_3Actions0"."Type".value = "COMMAND_URL"; + "khotkeysrc"."Data_2_3Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_3Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_3Triggers"."Comment".value = "Simple_action"; + "khotkeysrc"."Data_2_3Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_2_3Triggers0"."Key".value = "Ctrl+Alt+T"; + "khotkeysrc"."Data_2_3Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_2_3Triggers0"."Uuid".value = "{cdaec3a6-214e-4cc5-a877-c1df7064993e}"; + "khotkeysrc"."Data_2_4"."Comment".value = "Read the comment on the \"Type 'Hello'\" action first.\n\nQt Designer uses Ctrl+F4 for closing windows. In KDE, however, Ctrl+F4 is the shortcut for going to virtual desktop 4, so this shortcut does not work in Qt Designer. Further, Qt Designer does not use KDE's standard Ctrl+W for closing the window.\n\nThis problem can be solved by remapping Ctrl+W to Ctrl+F4 when the active window is Qt Designer. When Qt Designer is active, every time Ctrl+W is pressed, Ctrl+F4 will be sent to Qt Designer instead. In other applications, the effect of Ctrl+W is unchanged.\n\nWe now need to specify three things: A new shortcut trigger on 'Ctrl+W', a new keyboard input action sending Ctrl+F4, and a new condition that the active window is Qt Designer.\nQt Designer seems to always have title 'Qt Designer by Trolltech', so the condition will check for the active window having that title."; + "khotkeysrc"."Data_2_4"."Enabled".value = false; + "khotkeysrc"."Data_2_4"."Name".value = "Remap Ctrl+W to Ctrl+F4 in Qt Designer"; + "khotkeysrc"."Data_2_4"."Type".value = "GENERIC_ACTION_DATA"; + "khotkeysrc"."Data_2_4Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_4Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_2_4Actions0"."Input".value = "Ctrl+F4"; + "khotkeysrc"."Data_2_4Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_2_4Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_4Conditions"."ConditionsCount".value = 1; + "khotkeysrc"."Data_2_4Conditions0"."Type".value = "ACTIVE_WINDOW"; + "khotkeysrc"."Data_2_4Conditions0Window"."Comment".value = "Qt Designer"; + "khotkeysrc"."Data_2_4Conditions0Window"."WindowsCount".value = 1; + "khotkeysrc"."Data_2_4Conditions0Window0"."Class".value = ""; + "khotkeysrc"."Data_2_4Conditions0Window0"."ClassType".value = 0; + "khotkeysrc"."Data_2_4Conditions0Window0"."Comment".value = ""; + "khotkeysrc"."Data_2_4Conditions0Window0"."Role".value = ""; + "khotkeysrc"."Data_2_4Conditions0Window0"."RoleType".value = 0; + "khotkeysrc"."Data_2_4Conditions0Window0"."Title".value = "Qt Designer by Trolltech"; + "khotkeysrc"."Data_2_4Conditions0Window0"."TitleType".value = 2; + "khotkeysrc"."Data_2_4Conditions0Window0"."Type".value = "SIMPLE"; + "khotkeysrc"."Data_2_4Conditions0Window0"."WindowTypes".value = 33; + "khotkeysrc"."Data_2_4Triggers"."Comment".value = ""; + "khotkeysrc"."Data_2_4Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_2_4Triggers0"."Key".value = "Ctrl+W"; + "khotkeysrc"."Data_2_4Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_2_4Triggers0"."Uuid".value = "{be4d63e1-1548-4c32-bdae-670b212885a5}"; + "khotkeysrc"."Data_2_5"."Comment".value = "By pressing Alt+Ctrl+W a D-Bus call will be performed that will show the minicli. You can use any kind of D-Bus call, just like using the command line 'qdbus' tool."; + "khotkeysrc"."Data_2_5"."Enabled".value = false; + "khotkeysrc"."Data_2_5"."Name".value = "Perform D-Bus call 'qdbus org.kde.krunner /App display'"; + "khotkeysrc"."Data_2_5"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_5Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_5Actions0"."Arguments".value = ""; + "khotkeysrc"."Data_2_5Actions0"."Call".value = "popupExecuteCommand"; + "khotkeysrc"."Data_2_5Actions0"."RemoteApp".value = "org.kde.krunner"; + "khotkeysrc"."Data_2_5Actions0"."RemoteObj".value = "/App"; + "khotkeysrc"."Data_2_5Actions0"."Type".value = "DBUS"; + "khotkeysrc"."Data_2_5Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_5Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_5Triggers"."Comment".value = "Simple_action"; + "khotkeysrc"."Data_2_5Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_2_5Triggers0"."Key".value = "Ctrl+Alt+W"; + "khotkeysrc"."Data_2_5Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_2_5Triggers0"."Uuid".value = "{04f1cf14-2324-43a4-854e-867e289623db}"; + "khotkeysrc"."Data_2_6"."Comment".value = "Read the comment on the \"Type 'Hello'\" action first.\n\nJust like the \"Type 'Hello'\" action, this one simulates keyboard input, specifically, after pressing Ctrl+Alt+B, it sends B to XMMS (B in XMMS jumps to the next song). The 'Send to specific window' checkbox is checked and a window with its class containing 'XMMS_Player' is specified; this will make the input always be sent to this window. This way, you can control XMMS even if, for instance, it is on a different virtual desktop.\n\n(Run 'xprop' and click on the XMMS window and search for WM_CLASS to see 'XMMS_Player')."; + "khotkeysrc"."Data_2_6"."Enabled".value = false; + "khotkeysrc"."Data_2_6"."Name".value = "Next in XMMS"; + "khotkeysrc"."Data_2_6"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_6Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_6Actions0"."DestinationWindow".value = 1; + "khotkeysrc"."Data_2_6Actions0"."Input".value = "B"; + "khotkeysrc"."Data_2_6Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_2_6Actions0DestinationWindow"."Comment".value = "XMMS window"; + "khotkeysrc"."Data_2_6Actions0DestinationWindow"."WindowsCount".value = 1; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Class".value = "XMMS_Player"; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."ClassType".value = 1; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Comment".value = "XMMS Player window"; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Role".value = ""; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."RoleType".value = 0; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Title".value = ""; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."TitleType".value = 0; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."Type".value = "SIMPLE"; + "khotkeysrc"."Data_2_6Actions0DestinationWindow0"."WindowTypes".value = 33; + "khotkeysrc"."Data_2_6Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_6Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_6Triggers"."Comment".value = "Simple_action"; + "khotkeysrc"."Data_2_6Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_2_6Triggers0"."Key".value = "Ctrl+Alt+B"; + "khotkeysrc"."Data_2_6Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_2_6Triggers0"."Uuid".value = "{c6793be6-3845-4af5-97c0-3d09f9118e6b}"; + "khotkeysrc"."Data_2_7"."Comment".value = "Konqueror in KDE3.1 has tabs, and now you can also have gestures.\n\nJust press the middle mouse button and start drawing one of the gestures, and after you are finished, release the mouse button. If you only need to paste the selection, it still works, just click the middle mouse button. (You can change the mouse button to use in the global settings).\n\nRight now, there are the following gestures available:\nmove right and back left - Forward (Alt+Right)\nmove left and back right - Back (Alt+Left)\nmove up and back down - Up (Alt+Up)\ncircle counterclockwise - Reload (F5)\n\nThe gesture shapes can be entered by performing them in the configuration dialog. You can also look at your numeric pad to help you: gestures are recognized like a 3x3 grid of fields, numbered 1 to 9.\n\nNote that you must perform exactly the gesture to trigger the action. Because of this, it is possible to enter more gestures for the action. You should try to avoid complicated gestures where you change the direction of mouse movement more than once. For instance, 45654 or 74123 are simple to perform, but 1236987 may be already quite difficult.\n\nThe conditions for all gestures are defined in this group. All these gestures are active only if the active window is Konqueror (class contains 'konqueror')."; + "khotkeysrc"."Data_2_7"."DataCount".value = 4; + "khotkeysrc"."Data_2_7"."Enabled".value = false; + "khotkeysrc"."Data_2_7"."Name".value = "Konqi Gestures"; + "khotkeysrc"."Data_2_7"."SystemGroup".value = 0; + "khotkeysrc"."Data_2_7"."Type".value = "ACTION_DATA_GROUP"; + "khotkeysrc"."Data_2_7Conditions"."Comment".value = "Konqueror window"; + "khotkeysrc"."Data_2_7Conditions"."ConditionsCount".value = 1; + "khotkeysrc"."Data_2_7Conditions0"."Type".value = "ACTIVE_WINDOW"; + "khotkeysrc"."Data_2_7Conditions0Window"."Comment".value = "Konqueror"; + "khotkeysrc"."Data_2_7Conditions0Window"."WindowsCount".value = 1; + "khotkeysrc"."Data_2_7Conditions0Window0"."Class".value = "konqueror"; + "khotkeysrc"."Data_2_7Conditions0Window0"."ClassType".value = 1; + "khotkeysrc"."Data_2_7Conditions0Window0"."Comment".value = "Konqueror"; + "khotkeysrc"."Data_2_7Conditions0Window0"."Role".value = ""; + "khotkeysrc"."Data_2_7Conditions0Window0"."RoleType".value = 0; + "khotkeysrc"."Data_2_7Conditions0Window0"."Title".value = ""; + "khotkeysrc"."Data_2_7Conditions0Window0"."TitleType".value = 0; + "khotkeysrc"."Data_2_7Conditions0Window0"."Type".value = "SIMPLE"; + "khotkeysrc"."Data_2_7Conditions0Window0"."WindowTypes".value = 33; + "khotkeysrc"."Data_2_7_1"."Comment".value = ""; + "khotkeysrc"."Data_2_7_1"."Enabled".value = false; + "khotkeysrc"."Data_2_7_1"."Name".value = "Back"; + "khotkeysrc"."Data_2_7_1"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_7_1Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_7_1Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_2_7_1Actions0"."Input".value = "Alt+Left"; + "khotkeysrc"."Data_2_7_1Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_2_7_1Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_7_1Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_7_1Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_2_7_1Triggers"."TriggersCount".value = 3; + "khotkeysrc"."Data_2_7_1Triggers0"."GesturePointData".value = "0,0.0625,1,1,0.5,0.0625,0.0625,1,0.875,0.5,0.125,0.0625,1,0.75,0.5,0.1875,0.0625,1,0.625,0.5,0.25,0.0625,1,0.5,0.5,0.3125,0.0625,1,0.375,0.5,0.375,0.0625,1,0.25,0.5,0.4375,0.0625,1,0.125,0.5,0.5,0.0625,0,0,0.5,0.5625,0.0625,0,0.125,0.5,0.625,0.0625,0,0.25,0.5,0.6875,0.0625,0,0.375,0.5,0.75,0.0625,0,0.5,0.5,0.8125,0.0625,0,0.625,0.5,0.875,0.0625,0,0.75,0.5,0.9375,0.0625,0,0.875,0.5,1,0,0,1,0.5"; + "khotkeysrc"."Data_2_7_1Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_1Triggers1"."GesturePointData".value = "0,0.0833333,1,0.5,0.5,0.0833333,0.0833333,1,0.375,0.5,0.166667,0.0833333,1,0.25,0.5,0.25,0.0833333,1,0.125,0.5,0.333333,0.0833333,0,0,0.5,0.416667,0.0833333,0,0.125,0.5,0.5,0.0833333,0,0.25,0.5,0.583333,0.0833333,0,0.375,0.5,0.666667,0.0833333,0,0.5,0.5,0.75,0.0833333,0,0.625,0.5,0.833333,0.0833333,0,0.75,0.5,0.916667,0.0833333,0,0.875,0.5,1,0,0,1,0.5"; + "khotkeysrc"."Data_2_7_1Triggers1"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_1Triggers2"."GesturePointData".value = "0,0.0833333,1,1,0.5,0.0833333,0.0833333,1,0.875,0.5,0.166667,0.0833333,1,0.75,0.5,0.25,0.0833333,1,0.625,0.5,0.333333,0.0833333,1,0.5,0.5,0.416667,0.0833333,1,0.375,0.5,0.5,0.0833333,1,0.25,0.5,0.583333,0.0833333,1,0.125,0.5,0.666667,0.0833333,0,0,0.5,0.75,0.0833333,0,0.125,0.5,0.833333,0.0833333,0,0.25,0.5,0.916667,0.0833333,0,0.375,0.5,1,0,0,0.5,0.5"; + "khotkeysrc"."Data_2_7_1Triggers2"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_2"."Comment".value = ""; + "khotkeysrc"."Data_2_7_2"."Enabled".value = false; + "khotkeysrc"."Data_2_7_2"."Name".value = "Forward"; + "khotkeysrc"."Data_2_7_2"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_7_2Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_7_2Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_2_7_2Actions0"."Input".value = "Alt+Right"; + "khotkeysrc"."Data_2_7_2Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_2_7_2Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_7_2Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_7_2Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_2_7_2Triggers"."TriggersCount".value = 3; + "khotkeysrc"."Data_2_7_2Triggers0"."GesturePointData".value = "0,0.0625,0,0,0.5,0.0625,0.0625,0,0.125,0.5,0.125,0.0625,0,0.25,0.5,0.1875,0.0625,0,0.375,0.5,0.25,0.0625,0,0.5,0.5,0.3125,0.0625,0,0.625,0.5,0.375,0.0625,0,0.75,0.5,0.4375,0.0625,0,0.875,0.5,0.5,0.0625,1,1,0.5,0.5625,0.0625,1,0.875,0.5,0.625,0.0625,1,0.75,0.5,0.6875,0.0625,1,0.625,0.5,0.75,0.0625,1,0.5,0.5,0.8125,0.0625,1,0.375,0.5,0.875,0.0625,1,0.25,0.5,0.9375,0.0625,1,0.125,0.5,1,0,0,0,0.5"; + "khotkeysrc"."Data_2_7_2Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_2Triggers1"."GesturePointData".value = "0,0.0833333,0,0.5,0.5,0.0833333,0.0833333,0,0.625,0.5,0.166667,0.0833333,0,0.75,0.5,0.25,0.0833333,0,0.875,0.5,0.333333,0.0833333,1,1,0.5,0.416667,0.0833333,1,0.875,0.5,0.5,0.0833333,1,0.75,0.5,0.583333,0.0833333,1,0.625,0.5,0.666667,0.0833333,1,0.5,0.5,0.75,0.0833333,1,0.375,0.5,0.833333,0.0833333,1,0.25,0.5,0.916667,0.0833333,1,0.125,0.5,1,0,0,0,0.5"; + "khotkeysrc"."Data_2_7_2Triggers1"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_2Triggers2"."GesturePointData".value = "0,0.0833333,0,0,0.5,0.0833333,0.0833333,0,0.125,0.5,0.166667,0.0833333,0,0.25,0.5,0.25,0.0833333,0,0.375,0.5,0.333333,0.0833333,0,0.5,0.5,0.416667,0.0833333,0,0.625,0.5,0.5,0.0833333,0,0.75,0.5,0.583333,0.0833333,0,0.875,0.5,0.666667,0.0833333,1,1,0.5,0.75,0.0833333,1,0.875,0.5,0.833333,0.0833333,1,0.75,0.5,0.916667,0.0833333,1,0.625,0.5,1,0,0,0.5,0.5"; + "khotkeysrc"."Data_2_7_2Triggers2"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_3"."Comment".value = ""; + "khotkeysrc"."Data_2_7_3"."Enabled".value = false; + "khotkeysrc"."Data_2_7_3"."Name".value = "Up"; + "khotkeysrc"."Data_2_7_3"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_7_3Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_7_3Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_2_7_3Actions0"."Input".value = "Alt+Up"; + "khotkeysrc"."Data_2_7_3Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_2_7_3Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_7_3Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_7_3Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_2_7_3Triggers"."TriggersCount".value = 3; + "khotkeysrc"."Data_2_7_3Triggers0"."GesturePointData".value = "0,0.0625,-0.5,0.5,1,0.0625,0.0625,-0.5,0.5,0.875,0.125,0.0625,-0.5,0.5,0.75,0.1875,0.0625,-0.5,0.5,0.625,0.25,0.0625,-0.5,0.5,0.5,0.3125,0.0625,-0.5,0.5,0.375,0.375,0.0625,-0.5,0.5,0.25,0.4375,0.0625,-0.5,0.5,0.125,0.5,0.0625,0.5,0.5,0,0.5625,0.0625,0.5,0.5,0.125,0.625,0.0625,0.5,0.5,0.25,0.6875,0.0625,0.5,0.5,0.375,0.75,0.0625,0.5,0.5,0.5,0.8125,0.0625,0.5,0.5,0.625,0.875,0.0625,0.5,0.5,0.75,0.9375,0.0625,0.5,0.5,0.875,1,0,0,0.5,1"; + "khotkeysrc"."Data_2_7_3Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_3Triggers1"."GesturePointData".value = "0,0.0833333,-0.5,0.5,1,0.0833333,0.0833333,-0.5,0.5,0.875,0.166667,0.0833333,-0.5,0.5,0.75,0.25,0.0833333,-0.5,0.5,0.625,0.333333,0.0833333,-0.5,0.5,0.5,0.416667,0.0833333,-0.5,0.5,0.375,0.5,0.0833333,-0.5,0.5,0.25,0.583333,0.0833333,-0.5,0.5,0.125,0.666667,0.0833333,0.5,0.5,0,0.75,0.0833333,0.5,0.5,0.125,0.833333,0.0833333,0.5,0.5,0.25,0.916667,0.0833333,0.5,0.5,0.375,1,0,0,0.5,0.5"; + "khotkeysrc"."Data_2_7_3Triggers1"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_3Triggers2"."GesturePointData".value = "0,0.0833333,-0.5,0.5,0.5,0.0833333,0.0833333,-0.5,0.5,0.375,0.166667,0.0833333,-0.5,0.5,0.25,0.25,0.0833333,-0.5,0.5,0.125,0.333333,0.0833333,0.5,0.5,0,0.416667,0.0833333,0.5,0.5,0.125,0.5,0.0833333,0.5,0.5,0.25,0.583333,0.0833333,0.5,0.5,0.375,0.666667,0.0833333,0.5,0.5,0.5,0.75,0.0833333,0.5,0.5,0.625,0.833333,0.0833333,0.5,0.5,0.75,0.916667,0.0833333,0.5,0.5,0.875,1,0,0,0.5,1"; + "khotkeysrc"."Data_2_7_3Triggers2"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_4"."Comment".value = ""; + "khotkeysrc"."Data_2_7_4"."Enabled".value = false; + "khotkeysrc"."Data_2_7_4"."Name".value = "Reload"; + "khotkeysrc"."Data_2_7_4"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_7_4Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_7_4Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_2_7_4Actions0"."Input".value = "F5"; + "khotkeysrc"."Data_2_7_4Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_2_7_4Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_7_4Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_7_4Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_2_7_4Triggers"."TriggersCount".value = 3; + "khotkeysrc"."Data_2_7_4Triggers0"."GesturePointData".value = "0,0.03125,0,0,1,0.03125,0.03125,0,0.125,1,0.0625,0.03125,0,0.25,1,0.09375,0.03125,0,0.375,1,0.125,0.03125,0,0.5,1,0.15625,0.03125,0,0.625,1,0.1875,0.03125,0,0.75,1,0.21875,0.03125,0,0.875,1,0.25,0.03125,-0.5,1,1,0.28125,0.03125,-0.5,1,0.875,0.3125,0.03125,-0.5,1,0.75,0.34375,0.03125,-0.5,1,0.625,0.375,0.03125,-0.5,1,0.5,0.40625,0.03125,-0.5,1,0.375,0.4375,0.03125,-0.5,1,0.25,0.46875,0.03125,-0.5,1,0.125,0.5,0.03125,1,1,0,0.53125,0.03125,1,0.875,0,0.5625,0.03125,1,0.75,0,0.59375,0.03125,1,0.625,0,0.625,0.03125,1,0.5,0,0.65625,0.03125,1,0.375,0,0.6875,0.03125,1,0.25,0,0.71875,0.03125,1,0.125,0,0.75,0.03125,0.5,0,0,0.78125,0.03125,0.5,0,0.125,0.8125,0.03125,0.5,0,0.25,0.84375,0.03125,0.5,0,0.375,0.875,0.03125,0.5,0,0.5,0.90625,0.03125,0.5,0,0.625,0.9375,0.03125,0.5,0,0.75,0.96875,0.03125,0.5,0,0.875,1,0,0,0,1"; + "khotkeysrc"."Data_2_7_4Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_4Triggers1"."GesturePointData".value = "0,0.0277778,0,0,1,0.0277778,0.0277778,0,0.125,1,0.0555556,0.0277778,0,0.25,1,0.0833333,0.0277778,0,0.375,1,0.111111,0.0277778,0,0.5,1,0.138889,0.0277778,0,0.625,1,0.166667,0.0277778,0,0.75,1,0.194444,0.0277778,0,0.875,1,0.222222,0.0277778,-0.5,1,1,0.25,0.0277778,-0.5,1,0.875,0.277778,0.0277778,-0.5,1,0.75,0.305556,0.0277778,-0.5,1,0.625,0.333333,0.0277778,-0.5,1,0.5,0.361111,0.0277778,-0.5,1,0.375,0.388889,0.0277778,-0.5,1,0.25,0.416667,0.0277778,-0.5,1,0.125,0.444444,0.0277778,1,1,0,0.472222,0.0277778,1,0.875,0,0.5,0.0277778,1,0.75,0,0.527778,0.0277778,1,0.625,0,0.555556,0.0277778,1,0.5,0,0.583333,0.0277778,1,0.375,0,0.611111,0.0277778,1,0.25,0,0.638889,0.0277778,1,0.125,0,0.666667,0.0277778,0.5,0,0,0.694444,0.0277778,0.5,0,0.125,0.722222,0.0277778,0.5,0,0.25,0.75,0.0277778,0.5,0,0.375,0.777778,0.0277778,0.5,0,0.5,0.805556,0.0277778,0.5,0,0.625,0.833333,0.0277778,0.5,0,0.75,0.861111,0.0277778,0.5,0,0.875,0.888889,0.0277778,0,0,1,0.916667,0.0277778,0,0.125,1,0.944444,0.0277778,0,0.25,1,0.972222,0.0277778,0,0.375,1,1,0,0,0.5,1"; + "khotkeysrc"."Data_2_7_4Triggers1"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_7_4Triggers2"."GesturePointData".value = "0,0.0277778,0.5,0,0.5,0.0277778,0.0277778,0.5,0,0.625,0.0555556,0.0277778,0.5,0,0.75,0.0833333,0.0277778,0.5,0,0.875,0.111111,0.0277778,0,0,1,0.138889,0.0277778,0,0.125,1,0.166667,0.0277778,0,0.25,1,0.194444,0.0277778,0,0.375,1,0.222222,0.0277778,0,0.5,1,0.25,0.0277778,0,0.625,1,0.277778,0.0277778,0,0.75,1,0.305556,0.0277778,0,0.875,1,0.333333,0.0277778,-0.5,1,1,0.361111,0.0277778,-0.5,1,0.875,0.388889,0.0277778,-0.5,1,0.75,0.416667,0.0277778,-0.5,1,0.625,0.444444,0.0277778,-0.5,1,0.5,0.472222,0.0277778,-0.5,1,0.375,0.5,0.0277778,-0.5,1,0.25,0.527778,0.0277778,-0.5,1,0.125,0.555556,0.0277778,1,1,0,0.583333,0.0277778,1,0.875,0,0.611111,0.0277778,1,0.75,0,0.638889,0.0277778,1,0.625,0,0.666667,0.0277778,1,0.5,0,0.694444,0.0277778,1,0.375,0,0.722222,0.0277778,1,0.25,0,0.75,0.0277778,1,0.125,0,0.777778,0.0277778,0.5,0,0,0.805556,0.0277778,0.5,0,0.125,0.833333,0.0277778,0.5,0,0.25,0.861111,0.0277778,0.5,0,0.375,0.888889,0.0277778,0.5,0,0.5,0.916667,0.0277778,0.5,0,0.625,0.944444,0.0277778,0.5,0,0.75,0.972222,0.0277778,0.5,0,0.875,1,0,0,0,1"; + "khotkeysrc"."Data_2_7_4Triggers2"."Type".value = "GESTURE"; + "khotkeysrc"."Data_2_8"."Comment".value = "After pressing Win+E (Tux+E) a WWW browser will be launched, and it will open http://www.kde.org . You may run all kind of commands you can run in minicli (Alt+F2)."; + "khotkeysrc"."Data_2_8"."Enabled".value = false; + "khotkeysrc"."Data_2_8"."Name".value = "Go to KDE Website"; + "khotkeysrc"."Data_2_8"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_2_8Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_2_8Actions0"."CommandURL".value = "http://www.kde.org"; + "khotkeysrc"."Data_2_8Actions0"."Type".value = "COMMAND_URL"; + "khotkeysrc"."Data_2_8Conditions"."Comment".value = ""; + "khotkeysrc"."Data_2_8Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_2_8Triggers"."Comment".value = "Simple_action"; + "khotkeysrc"."Data_2_8Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_2_8Triggers0"."Key".value = "Meta+E"; + "khotkeysrc"."Data_2_8Triggers0"."Type".value = "SHORTCUT"; + "khotkeysrc"."Data_2_8Triggers0"."Uuid".value = "{af8f36c3-5682-4153-869f-fe61c53dd3c3}"; + "khotkeysrc"."Data_3"."Comment".value = "Basic Konqueror gestures."; + "khotkeysrc"."Data_3"."DataCount".value = 14; + "khotkeysrc"."Data_3"."Enabled".value = true; + "khotkeysrc"."Data_3"."ImportId".value = "konqueror_gestures_kde321"; + "khotkeysrc"."Data_3"."Name".value = "Konqueror Gestures"; + "khotkeysrc"."Data_3"."SystemGroup".value = 0; + "khotkeysrc"."Data_3"."Type".value = "ACTION_DATA_GROUP"; + "khotkeysrc"."Data_3Conditions"."Comment".value = "Konqueror window"; + "khotkeysrc"."Data_3Conditions"."ConditionsCount".value = 1; + "khotkeysrc"."Data_3Conditions0"."Type".value = "ACTIVE_WINDOW"; + "khotkeysrc"."Data_3Conditions0Window"."Comment".value = "Konqueror"; + "khotkeysrc"."Data_3Conditions0Window"."WindowsCount".value = 1; + "khotkeysrc"."Data_3Conditions0Window0"."Class".value = "^konquerors"; + "khotkeysrc"."Data_3Conditions0Window0"."ClassType".value = 3; + "khotkeysrc"."Data_3Conditions0Window0"."Comment".value = "Konqueror"; + "khotkeysrc"."Data_3Conditions0Window0"."Role".value = "konqueror-mainwindow#1"; + "khotkeysrc"."Data_3Conditions0Window0"."RoleType".value = 0; + "khotkeysrc"."Data_3Conditions0Window0"."Title".value = "file:/ - Konqueror"; + "khotkeysrc"."Data_3Conditions0Window0"."TitleType".value = 0; + "khotkeysrc"."Data_3Conditions0Window0"."Type".value = "SIMPLE"; + "khotkeysrc"."Data_3Conditions0Window0"."WindowTypes".value = 1; + "khotkeysrc"."Data_3_1"."Comment".value = "Press, move left, release."; + "khotkeysrc"."Data_3_1"."Enabled".value = true; + "khotkeysrc"."Data_3_1"."Name".value = "Back"; + "khotkeysrc"."Data_3_1"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_10"."Comment".value = "Opera-style: Press, move up, release.\nNOTE: Conflicts with 'New Tab', and as such is disabled by default."; + "khotkeysrc"."Data_3_10"."Enabled".value = false; + "khotkeysrc"."Data_3_10"."Name".value = "Stop Loading"; + "khotkeysrc"."Data_3_10"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_10Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_10Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_10Actions0"."Input".value = "Escape\n"; + "khotkeysrc"."Data_3_10Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_10Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_10Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_10Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_10Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_10Triggers0"."GesturePointData".value = "0,0.125,-0.5,0.5,1,0.125,0.125,-0.5,0.5,0.875,0.25,0.125,-0.5,0.5,0.75,0.375,0.125,-0.5,0.5,0.625,0.5,0.125,-0.5,0.5,0.5,0.625,0.125,-0.5,0.5,0.375,0.75,0.125,-0.5,0.5,0.25,0.875,0.125,-0.5,0.5,0.125,1,0,0,0.5,0"; + "khotkeysrc"."Data_3_10Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_11"."Comment".value = "Going up in URL/directory structure.\nMozilla-style: Press, move up, move left, move up, release."; + "khotkeysrc"."Data_3_11"."Enabled".value = true; + "khotkeysrc"."Data_3_11"."Name".value = "Up"; + "khotkeysrc"."Data_3_11"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_11Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_11Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_11Actions0"."Input".value = "Alt+Up"; + "khotkeysrc"."Data_3_11Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_11Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_11Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_11Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_11Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_11Triggers0"."GesturePointData".value = "0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,1,1,0.5,0.3125,0.0625,1,0.875,0.5,0.375,0.0625,1,0.75,0.5,0.4375,0.0625,1,0.625,0.5,0.5,0.0625,1,0.5,0.5,0.5625,0.0625,1,0.375,0.5,0.625,0.0625,1,0.25,0.5,0.6875,0.0625,1,0.125,0.5,0.75,0.0625,-0.5,0,0.5,0.8125,0.0625,-0.5,0,0.375,0.875,0.0625,-0.5,0,0.25,0.9375,0.0625,-0.5,0,0.125,1,0,0,0,0"; + "khotkeysrc"."Data_3_11Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_12"."Comment".value = "Going up in URL/directory structure.\nOpera-style: Press, move up, move left, move up, release.\nNOTE: Conflicts with \"Activate Previous Tab\", and as such is disabled by default."; + "khotkeysrc"."Data_3_12"."Enabled".value = false; + "khotkeysrc"."Data_3_12"."Name".value = "Up #2"; + "khotkeysrc"."Data_3_12"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_12Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_12Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_12Actions0"."Input".value = "Alt+Up\n"; + "khotkeysrc"."Data_3_12Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_12Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_12Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_12Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_12Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_12Triggers0"."GesturePointData".value = "0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,-0.5,1,0.5,0.3125,0.0625,-0.5,1,0.375,0.375,0.0625,-0.5,1,0.25,0.4375,0.0625,-0.5,1,0.125,0.5,0.0625,1,1,0,0.5625,0.0625,1,0.875,0,0.625,0.0625,1,0.75,0,0.6875,0.0625,1,0.625,0,0.75,0.0625,1,0.5,0,0.8125,0.0625,1,0.375,0,0.875,0.0625,1,0.25,0,0.9375,0.0625,1,0.125,0,1,0,0,0,0"; + "khotkeysrc"."Data_3_12Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_13"."Comment".value = "Press, move up, move right, release."; + "khotkeysrc"."Data_3_13"."Enabled".value = true; + "khotkeysrc"."Data_3_13"."Name".value = "Activate Next Tab"; + "khotkeysrc"."Data_3_13"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_13Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_13Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_13Actions0"."Input".value = "Ctrl+.\n"; + "khotkeysrc"."Data_3_13Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_13Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_13Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_13Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_13Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_13Triggers0"."GesturePointData".value = "0,0.0625,-0.5,0,1,0.0625,0.0625,-0.5,0,0.875,0.125,0.0625,-0.5,0,0.75,0.1875,0.0625,-0.5,0,0.625,0.25,0.0625,-0.5,0,0.5,0.3125,0.0625,-0.5,0,0.375,0.375,0.0625,-0.5,0,0.25,0.4375,0.0625,-0.5,0,0.125,0.5,0.0625,0,0,0,0.5625,0.0625,0,0.125,0,0.625,0.0625,0,0.25,0,0.6875,0.0625,0,0.375,0,0.75,0.0625,0,0.5,0,0.8125,0.0625,0,0.625,0,0.875,0.0625,0,0.75,0,0.9375,0.0625,0,0.875,0,1,0,0,1,0"; + "khotkeysrc"."Data_3_13Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_14"."Comment".value = "Press, move up, move left, release."; + "khotkeysrc"."Data_3_14"."Enabled".value = true; + "khotkeysrc"."Data_3_14"."Name".value = "Activate Previous Tab"; + "khotkeysrc"."Data_3_14"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_14Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_14Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_14Actions0"."Input".value = "Ctrl+,"; + "khotkeysrc"."Data_3_14Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_14Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_14Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_14Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_14Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_14Triggers0"."GesturePointData".value = "0,0.0625,-0.5,1,1,0.0625,0.0625,-0.5,1,0.875,0.125,0.0625,-0.5,1,0.75,0.1875,0.0625,-0.5,1,0.625,0.25,0.0625,-0.5,1,0.5,0.3125,0.0625,-0.5,1,0.375,0.375,0.0625,-0.5,1,0.25,0.4375,0.0625,-0.5,1,0.125,0.5,0.0625,1,1,0,0.5625,0.0625,1,0.875,0,0.625,0.0625,1,0.75,0,0.6875,0.0625,1,0.625,0,0.75,0.0625,1,0.5,0,0.8125,0.0625,1,0.375,0,0.875,0.0625,1,0.25,0,0.9375,0.0625,1,0.125,0,1,0,0,0,0"; + "khotkeysrc"."Data_3_14Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_1Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_1Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_1Actions0"."Input".value = "Alt+Left"; + "khotkeysrc"."Data_3_1Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_1Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_1Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_1Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_1Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_1Triggers0"."GesturePointData".value = "0,0.125,1,1,0.5,0.125,0.125,1,0.875,0.5,0.25,0.125,1,0.75,0.5,0.375,0.125,1,0.625,0.5,0.5,0.125,1,0.5,0.5,0.625,0.125,1,0.375,0.5,0.75,0.125,1,0.25,0.5,0.875,0.125,1,0.125,0.5,1,0,0,0,0.5"; + "khotkeysrc"."Data_3_1Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_2"."Comment".value = "Press, move down, move up, move down, release."; + "khotkeysrc"."Data_3_2"."Enabled".value = true; + "khotkeysrc"."Data_3_2"."Name".value = "Duplicate Tab"; + "khotkeysrc"."Data_3_2"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_2Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_2Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_2Actions0"."Input".value = "Ctrl+Shift+D\n"; + "khotkeysrc"."Data_3_2Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_2Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_2Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_2Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_2Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_2Triggers0"."GesturePointData".value = "0,0.0416667,0.5,0.5,0,0.0416667,0.0416667,0.5,0.5,0.125,0.0833333,0.0416667,0.5,0.5,0.25,0.125,0.0416667,0.5,0.5,0.375,0.166667,0.0416667,0.5,0.5,0.5,0.208333,0.0416667,0.5,0.5,0.625,0.25,0.0416667,0.5,0.5,0.75,0.291667,0.0416667,0.5,0.5,0.875,0.333333,0.0416667,-0.5,0.5,1,0.375,0.0416667,-0.5,0.5,0.875,0.416667,0.0416667,-0.5,0.5,0.75,0.458333,0.0416667,-0.5,0.5,0.625,0.5,0.0416667,-0.5,0.5,0.5,0.541667,0.0416667,-0.5,0.5,0.375,0.583333,0.0416667,-0.5,0.5,0.25,0.625,0.0416667,-0.5,0.5,0.125,0.666667,0.0416667,0.5,0.5,0,0.708333,0.0416667,0.5,0.5,0.125,0.75,0.0416667,0.5,0.5,0.25,0.791667,0.0416667,0.5,0.5,0.375,0.833333,0.0416667,0.5,0.5,0.5,0.875,0.0416667,0.5,0.5,0.625,0.916667,0.0416667,0.5,0.5,0.75,0.958333,0.0416667,0.5,0.5,0.875,1,0,0,0.5,1"; + "khotkeysrc"."Data_3_2Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_3"."Comment".value = "Press, move down, move up, release."; + "khotkeysrc"."Data_3_3"."Enabled".value = true; + "khotkeysrc"."Data_3_3"."Name".value = "Duplicate Window"; + "khotkeysrc"."Data_3_3"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_3Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_3Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_3Actions0"."Input".value = "Ctrl+D\n"; + "khotkeysrc"."Data_3_3Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_3Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_3Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_3Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_3Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_3Triggers0"."GesturePointData".value = "0,0.0625,0.5,0.5,0,0.0625,0.0625,0.5,0.5,0.125,0.125,0.0625,0.5,0.5,0.25,0.1875,0.0625,0.5,0.5,0.375,0.25,0.0625,0.5,0.5,0.5,0.3125,0.0625,0.5,0.5,0.625,0.375,0.0625,0.5,0.5,0.75,0.4375,0.0625,0.5,0.5,0.875,0.5,0.0625,-0.5,0.5,1,0.5625,0.0625,-0.5,0.5,0.875,0.625,0.0625,-0.5,0.5,0.75,0.6875,0.0625,-0.5,0.5,0.625,0.75,0.0625,-0.5,0.5,0.5,0.8125,0.0625,-0.5,0.5,0.375,0.875,0.0625,-0.5,0.5,0.25,0.9375,0.0625,-0.5,0.5,0.125,1,0,0,0.5,0"; + "khotkeysrc"."Data_3_3Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_4"."Comment".value = "Press, move right, release."; + "khotkeysrc"."Data_3_4"."Enabled".value = true; + "khotkeysrc"."Data_3_4"."Name".value = "Forward"; + "khotkeysrc"."Data_3_4"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_4Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_4Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_4Actions0"."Input".value = "Alt+Right"; + "khotkeysrc"."Data_3_4Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_4Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_4Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_4Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_4Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_4Triggers0"."GesturePointData".value = "0,0.125,0,0,0.5,0.125,0.125,0,0.125,0.5,0.25,0.125,0,0.25,0.5,0.375,0.125,0,0.375,0.5,0.5,0.125,0,0.5,0.5,0.625,0.125,0,0.625,0.5,0.75,0.125,0,0.75,0.5,0.875,0.125,0,0.875,0.5,1,0,0,1,0.5"; + "khotkeysrc"."Data_3_4Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_5"."Comment".value = "Press, move down, move half up, move right, move down, release.\n(Drawing a lowercase 'h'.)"; + "khotkeysrc"."Data_3_5"."Enabled".value = true; + "khotkeysrc"."Data_3_5"."Name".value = "Home"; + "khotkeysrc"."Data_3_5"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_5Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_5Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_5Actions0"."Input".value = "Alt+Home\n"; + "khotkeysrc"."Data_3_5Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_5Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_5Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_5Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_5Triggers"."TriggersCount".value = 2; + "khotkeysrc"."Data_3_5Triggers0"."GesturePointData".value = "0,0.0461748,0.5,0,0,0.0461748,0.0461748,0.5,0,0.125,0.0923495,0.0461748,0.5,0,0.25,0.138524,0.0461748,0.5,0,0.375,0.184699,0.0461748,0.5,0,0.5,0.230874,0.0461748,0.5,0,0.625,0.277049,0.0461748,0.5,0,0.75,0.323223,0.0461748,0.5,0,0.875,0.369398,0.065301,-0.25,0,1,0.434699,0.065301,-0.25,0.125,0.875,0.5,0.065301,-0.25,0.25,0.75,0.565301,0.065301,-0.25,0.375,0.625,0.630602,0.0461748,0,0.5,0.5,0.676777,0.0461748,0,0.625,0.5,0.722951,0.0461748,0,0.75,0.5,0.769126,0.0461748,0,0.875,0.5,0.815301,0.0461748,0.5,1,0.5,0.861476,0.0461748,0.5,1,0.625,0.90765,0.0461748,0.5,1,0.75,0.953825,0.0461748,0.5,1,0.875,1,0,0,1,1"; + "khotkeysrc"."Data_3_5Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_5Triggers1"."GesturePointData".value = "0,0.0416667,0.5,0,0,0.0416667,0.0416667,0.5,0,0.125,0.0833333,0.0416667,0.5,0,0.25,0.125,0.0416667,0.5,0,0.375,0.166667,0.0416667,0.5,0,0.5,0.208333,0.0416667,0.5,0,0.625,0.25,0.0416667,0.5,0,0.75,0.291667,0.0416667,0.5,0,0.875,0.333333,0.0416667,-0.5,0,1,0.375,0.0416667,-0.5,0,0.875,0.416667,0.0416667,-0.5,0,0.75,0.458333,0.0416667,-0.5,0,0.625,0.5,0.0416667,0,0,0.5,0.541667,0.0416667,0,0.125,0.5,0.583333,0.0416667,0,0.25,0.5,0.625,0.0416667,0,0.375,0.5,0.666667,0.0416667,0,0.5,0.5,0.708333,0.0416667,0,0.625,0.5,0.75,0.0416667,0,0.75,0.5,0.791667,0.0416667,0,0.875,0.5,0.833333,0.0416667,0.5,1,0.5,0.875,0.0416667,0.5,1,0.625,0.916667,0.0416667,0.5,1,0.75,0.958333,0.0416667,0.5,1,0.875,1,0,0,1,1"; + "khotkeysrc"."Data_3_5Triggers1"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_6"."Comment".value = "Press, move right, move down, move right, release.\nMozilla-style: Press, move down, move right, release."; + "khotkeysrc"."Data_3_6"."Enabled".value = true; + "khotkeysrc"."Data_3_6"."Name".value = "Close Tab"; + "khotkeysrc"."Data_3_6"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_6Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_6Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_6Actions0"."Input".value = "Ctrl+W\n"; + "khotkeysrc"."Data_3_6Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_6Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_6Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_6Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_6Triggers"."TriggersCount".value = 2; + "khotkeysrc"."Data_3_6Triggers0"."GesturePointData".value = "0,0.0625,0,0,0,0.0625,0.0625,0,0.125,0,0.125,0.0625,0,0.25,0,0.1875,0.0625,0,0.375,0,0.25,0.0625,0.5,0.5,0,0.3125,0.0625,0.5,0.5,0.125,0.375,0.0625,0.5,0.5,0.25,0.4375,0.0625,0.5,0.5,0.375,0.5,0.0625,0.5,0.5,0.5,0.5625,0.0625,0.5,0.5,0.625,0.625,0.0625,0.5,0.5,0.75,0.6875,0.0625,0.5,0.5,0.875,0.75,0.0625,0,0.5,1,0.8125,0.0625,0,0.625,1,0.875,0.0625,0,0.75,1,0.9375,0.0625,0,0.875,1,1,0,0,1,1"; + "khotkeysrc"."Data_3_6Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_6Triggers1"."GesturePointData".value = "0,0.0625,0.5,0,0,0.0625,0.0625,0.5,0,0.125,0.125,0.0625,0.5,0,0.25,0.1875,0.0625,0.5,0,0.375,0.25,0.0625,0.5,0,0.5,0.3125,0.0625,0.5,0,0.625,0.375,0.0625,0.5,0,0.75,0.4375,0.0625,0.5,0,0.875,0.5,0.0625,0,0,1,0.5625,0.0625,0,0.125,1,0.625,0.0625,0,0.25,1,0.6875,0.0625,0,0.375,1,0.75,0.0625,0,0.5,1,0.8125,0.0625,0,0.625,1,0.875,0.0625,0,0.75,1,0.9375,0.0625,0,0.875,1,1,0,0,1,1"; + "khotkeysrc"."Data_3_6Triggers1"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_7"."Comment".value = "Press, move up, release.\nConflicts with Opera-style 'Up #2', which is disabled by default."; + "khotkeysrc"."Data_3_7"."Enabled".value = true; + "khotkeysrc"."Data_3_7"."Name".value = "New Tab"; + "khotkeysrc"."Data_3_7"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_7Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_7Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_7Actions0"."Input".value = "Ctrl+Shift+N"; + "khotkeysrc"."Data_3_7Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_7Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_7Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_7Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_7Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_7Triggers0"."GesturePointData".value = "0,0.125,-0.5,0.5,1,0.125,0.125,-0.5,0.5,0.875,0.25,0.125,-0.5,0.5,0.75,0.375,0.125,-0.5,0.5,0.625,0.5,0.125,-0.5,0.5,0.5,0.625,0.125,-0.5,0.5,0.375,0.75,0.125,-0.5,0.5,0.25,0.875,0.125,-0.5,0.5,0.125,1,0,0,0.5,0"; + "khotkeysrc"."Data_3_7Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_8"."Comment".value = "Press, move down, release."; + "khotkeysrc"."Data_3_8"."Enabled".value = true; + "khotkeysrc"."Data_3_8"."Name".value = "New Window"; + "khotkeysrc"."Data_3_8"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_8Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_8Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_8Actions0"."Input".value = "Ctrl+N\n"; + "khotkeysrc"."Data_3_8Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_8Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_8Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_8Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_8Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_8Triggers0"."GesturePointData".value = "0,0.125,0.5,0.5,0,0.125,0.125,0.5,0.5,0.125,0.25,0.125,0.5,0.5,0.25,0.375,0.125,0.5,0.5,0.375,0.5,0.125,0.5,0.5,0.5,0.625,0.125,0.5,0.5,0.625,0.75,0.125,0.5,0.5,0.75,0.875,0.125,0.5,0.5,0.875,1,0,0,0.5,1"; + "khotkeysrc"."Data_3_8Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."Data_3_9"."Comment".value = "Press, move up, move down, release."; + "khotkeysrc"."Data_3_9"."Enabled".value = true; + "khotkeysrc"."Data_3_9"."Name".value = "Reload"; + "khotkeysrc"."Data_3_9"."Type".value = "SIMPLE_ACTION_DATA"; + "khotkeysrc"."Data_3_9Actions"."ActionsCount".value = 1; + "khotkeysrc"."Data_3_9Actions0"."DestinationWindow".value = 2; + "khotkeysrc"."Data_3_9Actions0"."Input".value = "F5"; + "khotkeysrc"."Data_3_9Actions0"."Type".value = "KEYBOARD_INPUT"; + "khotkeysrc"."Data_3_9Conditions"."Comment".value = ""; + "khotkeysrc"."Data_3_9Conditions"."ConditionsCount".value = 0; + "khotkeysrc"."Data_3_9Triggers"."Comment".value = "Gesture_triggers"; + "khotkeysrc"."Data_3_9Triggers"."TriggersCount".value = 1; + "khotkeysrc"."Data_3_9Triggers0"."GesturePointData".value = "0,0.0625,-0.5,0.5,1,0.0625,0.0625,-0.5,0.5,0.875,0.125,0.0625,-0.5,0.5,0.75,0.1875,0.0625,-0.5,0.5,0.625,0.25,0.0625,-0.5,0.5,0.5,0.3125,0.0625,-0.5,0.5,0.375,0.375,0.0625,-0.5,0.5,0.25,0.4375,0.0625,-0.5,0.5,0.125,0.5,0.0625,0.5,0.5,0,0.5625,0.0625,0.5,0.5,0.125,0.625,0.0625,0.5,0.5,0.25,0.6875,0.0625,0.5,0.5,0.375,0.75,0.0625,0.5,0.5,0.5,0.8125,0.0625,0.5,0.5,0.625,0.875,0.0625,0.5,0.5,0.75,0.9375,0.0625,0.5,0.5,0.875,1,0,0,0.5,1"; + "khotkeysrc"."Data_3_9Triggers0"."Type".value = "GESTURE"; + "khotkeysrc"."General"."AllowKDEAppsToRememberWindowPositions[$d]".value = ""; + "khotkeysrc"."General"."BrowserApplication[$d]".value = ""; + "khotkeysrc"."General"."ColorSchemeHash[$d]".value = ""; + "khotkeysrc"."General"."ColorScheme[$d]".value = ""; + "khotkeysrc"."Gestures"."Disabled".value = true; + "khotkeysrc"."Gestures"."MouseButton".value = 2; + "khotkeysrc"."Gestures"."Timeout".value = 300; + "khotkeysrc"."GesturesExclude"."Comment".value = ""; + "khotkeysrc"."GesturesExclude"."WindowsCount".value = 0; + "khotkeysrc"."Icons"."Theme[$d]".value = ""; + "khotkeysrc"."KDE"."AnimationDurationFactor[$d]".value = ""; + "khotkeysrc"."KDE"."LookAndFeelPackage[$d]".value = ""; + "khotkeysrc"."KDE"."ShowDeleteCommand[$d]".value = ""; + "khotkeysrc"."KDE"."SingleClick[$d]".value = ""; + "khotkeysrc"."KDE"."widgetStyle[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Allow Expansion[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Automatically select filename extension[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Breadcrumb Navigation[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Decoration position[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."LocationCombo Completionmode[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."PathCombo Completionmode[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Show Bookmarks[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Show Full Path[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Show Inline Previews[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Show Preview[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Show Speedbar[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Show hidden files[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Sort by[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Sort directories first[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Sort hidden files last[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Sort reversed[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."Speedbar Width[$d]".value = ""; + "khotkeysrc"."KFileDialog Settings"."View Style[$d]".value = ""; + "khotkeysrc"."KShortcutsDialog Settings"."Dialog Size[$d]".value = ""; + "khotkeysrc"."Main"."AlreadyImported".value = "defaults,kde32b1,konqueror_gestures_kde321"; + "khotkeysrc"."Main"."Disabled".value = false; + "khotkeysrc"."PreviewSettings"."MaximumRemoteSize[$d]".value = ""; + "khotkeysrc"."Voice"."Shortcut".value = ""; + "khotkeysrc"."WM"."activeBackground[$d]".value = ""; + "khotkeysrc"."WM"."activeBlend[$d]".value = ""; + "khotkeysrc"."WM"."activeForeground[$d]".value = ""; + "khotkeysrc"."WM"."inactiveBackground[$d]".value = ""; + "khotkeysrc"."WM"."inactiveBlend[$d]".value = ""; + "khotkeysrc"."WM"."inactiveForeground[$d]".value = ""; + "kiorc"."Confirmations"."ConfirmDelete".value = true; + "kiorc"."Confirmations"."ConfirmEmptyTrash".value = true; + "kiorc"."Confirmations"."ConfirmTrash".value = false; + "kiorc"."Executable scripts"."behaviourOnLaunch".value = "alwaysAsk"; + "krunnerrc"."Plugins"."baloosearchEnabled".value = false; + "krunnerrc"."Plugins"."locationsEnabled".value = true; + "krunnerrc"."Plugins"."placesEnabled".value = true; + "krunnerrc"."Plugins"."recentdocumentsEnabled".value = true; + "kservicemenurc"."Show"."compressfileitemaction".value = true; + "kservicemenurc"."Show"."extractfileitemaction".value = true; + "kservicemenurc"."Show"."forgetfileitemaction".value = true; + "kservicemenurc"."Show"."installFont".value = true; + "kservicemenurc"."Show"."kactivitymanagerd_fileitem_linking_plugin".value = true; + "kservicemenurc"."Show"."kdeconnectfileitemaction".value = true; + "kservicemenurc"."Show"."kio-admin".value = true; + "kservicemenurc"."Show"."mountisoaction".value = true; + "kservicemenurc"."Show"."nextclouddolphinactionplugin".value = true; + "kservicemenurc"."Show"."runInKonsole".value = true; + "kservicemenurc"."Show"."setAsWallpaper".value = true; + "kservicemenurc"."Show"."slideshowfileitemaction".value = true; + "kservicemenurc"."Show"."tagsfileitemaction".value = true; + "kwalletrc"."Wallet"."First Use".value = false; + "kwinrc"."Desktops"."Id_1".value = "d1e5e218-1fd9-4946-aa47-dab2f5aac755"; + "kwinrc"."Desktops"."Id_2".value = "389927fc-9c76-4f84-ae0d-011cf76868e6"; + "kwinrc"."Desktops"."Id_3".value = "78f9d3d6-d0dd-4fd5-89fc-0157ada3dff5"; + "kwinrc"."Desktops"."Id_4".value = "a0a9ef6d-975c-4379-8ca1-265e1938d8d1"; + "kwinrc"."Desktops"."Number".value = 4; + "kwinrc"."Desktops"."Rows".value = 2; + "kwinrc"."Effect-diminactive"."Strength".value = 15; + "kwinrc"."Effect-magiclamp"."AnimationDuration".value = 20; + "kwinrc"."NightColor"."Active".value = true; + "kwinrc"."NightColor"."LatitudeFixed".value = 52.31865273558926; + "kwinrc"."NightColor"."LongitudeFixed".value = 5.44; + "kwinrc"."NightColor"."Mode".value = "Location"; + "kwinrc"."NightColor"."NightTemperature".value = 1400; + "kwinrc"."Plugins"."diminactiveEnabled".value = true; + "kwinrc"."Plugins"."dimscreenEnabled".value = true; + "kwinrc"."Plugins"."wobblywindowsEnabled".value = true; + "kwinrc"."Tiling"."padding".value = 4; + "kwinrc"."Tiling.5242ae1a-0a81-5d7b-ba61-2512b597a159"."tiles".value = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}"; + "kwinrc"."Tiling.57cc57cb-6089-56ec-afba-00ccd06d5508"."tiles".value = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}"; + "kwinrc"."Tiling.5c337d24-acf0-5ac2-9082-ce9cb012bc2c"."tiles".value = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"layoutDirection\":\"vertical\",\"tiles\":[{\"height\":0.5,\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.5},{\"width\":0.5}]},{\"height\":0.5,\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.5},{\"width\":0.5}]}],\"width\":1}]}"; + "kwinrc"."Tiling/5242ae1a-0a81-5d7b-ba61-2512b597a159"."tiles".value = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}"; + "kwinrc"."Tiling/57cc57cb-6089-56ec-afba-00ccd06d5508"."tiles".value = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}"; + "kwinrc"."Tiling/5c337d24-acf0-5ac2-9082-ce9cb012bc2c"."tiles".value = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"layoutDirection\":\"vertical\",\"tiles\":[{\"height\":0.5231481481481481,\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.4979166666666667},{\"width\":0.5020833333333333}]},{\"height\":0.47685185185185075,\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.49895833333333334},{\"width\":0.5010416666666666}]}],\"width\":1}]}"; + "kwinrc"."Xwayland"."Scale".value = 1; + "kxkbrc"."Layout"."Options".value = "compose:caps"; + "kxkbrc"."Layout"."ResetOldOptions".value = true; + "plasma-localerc"."Formats"."LANG".value = "en_US.UTF-8"; + "plasma-localerc"."Formats"."LC_ADDRESS".value = "nl_NL.UTF-8"; + "plasma-localerc"."Formats"."LC_MEASUREMENT".value = "nl_NL.UTF-8"; + "plasma-localerc"."Formats"."LC_MONETARY".value = "nl_NL.UTF-8"; + "plasma-localerc"."Formats"."LC_NAME".value = "nl_NL.UTF-8"; + "plasma-localerc"."Formats"."LC_NUMERIC".value = "nl_NL.UTF-8"; + "plasma-localerc"."Formats"."LC_PAPER".value = "nl_NL.UTF-8"; + "plasma-localerc"."Formats"."LC_TELEPHONE".value = "nl_NL.UTF-8"; + "plasma-localerc"."Formats"."LC_TIME".value = "en_DK.UTF-8"; + "systemsettingsrc"."KFileDialog Settings"."detailViewIconSize".value = 16; }; }; } From f73d7b51e7d35fff4ad9c31881fd370e0e88201f Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 27 Mar 2024 17:32:38 +0100 Subject: [PATCH 147/199] Change update to hopefully use the new flake with the check --- pkgs/update/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/update/default.nix b/pkgs/update/default.nix index 94d98d6..76f5760 100644 --- a/pkgs/update/default.nix +++ b/pkgs/update/default.nix @@ -18,9 +18,9 @@ writeShellApplication pushd ./update > /dev/null echo "Updating flake lock..." nix flake update - git add flake.lock - sudo nix flake check + git stage ./flake.lock git commit -m "update flake lock" + sudo nix flake check git push popd > /dev/null echo "Cleaning up repository in '/tmp/update'..." From 6c0896c5a1999b747bbd1fb608c69a1b04acb301 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 27 Mar 2024 17:32:52 +0100 Subject: [PATCH 148/199] update flake lock --- flake.lock | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/flake.lock b/flake.lock index 3e9cd2c..622bb36 100644 --- a/flake.lock +++ b/flake.lock @@ -52,11 +52,11 @@ ] }, "locked": { - "lastModified": 1711172967, - "narHash": "sha256-HBkYzSfFM0oMnRSjquI1CJ7a4jtIv9eRbAeJZDE8H3M=", + "lastModified": 1711506264, + "narHash": "sha256-GaQJvPyEkZu3YMdV9m1UENoeE10fkV6PcnLUtzPmuOY=", "owner": "girlbossceo", "repo": "conduwuit", - "rev": "101cb34f9a1b94b91717af3581f35386f20d4601", + "rev": "051668b62b76270dc8ad3b011c6adbfe8ee8bde2", "type": "github" }, "original": { @@ -137,11 +137,11 @@ ] }, "locked": { - "lastModified": 1711261295, - "narHash": "sha256-5DUNQl9BSmLxgGLbF05G7hi/UTk9DyZq8AuEszhQA7Q=", + "lastModified": 1711462743, + "narHash": "sha256-3wKGpHy9Kyh98DrziqC/s//60Q0pE17NgbY93L0uWng=", "owner": "nix-community", "repo": "disko", - "rev": "5d2d3e421ade554b19b4dbb0d11a04023378a330", + "rev": "a6717b1afee7ae955c61eefdf0ce8f864ef78115", "type": "github" }, "original": { @@ -390,11 +390,11 @@ ] }, "locked": { - "lastModified": 1711133180, - "narHash": "sha256-WJOahf+6115+GMl3wUfURu8fszuNeJLv9qAWFQl3Vmo=", + "lastModified": 1711554349, + "narHash": "sha256-RypwcWEIFePBI0Hubfj4chanbM/G2yzJzC6wgz+dmS4=", "owner": "nix-community", "repo": "home-manager", - "rev": "1c2c5e4cabba4c43504ef0f8cc3f3dfa284e2dbb", + "rev": "179f6acaf7c068c7870542cdae72afec9427a5b0", "type": "github" }, "original": { @@ -622,11 +622,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1711163522, - "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", + "lastModified": 1711333969, + "narHash": "sha256-5PiWGn10DQjMZee5NXzeA6ccsv60iLu+Xtw+mfvkUAs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", + "rev": "57e6b3a9e4ebec5aa121188301f04a6b8c354c9b", "type": "github" }, "original": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1711370797, - "narHash": "sha256-2xu0jVSjuKhN97dqc4bVtvEH52Rwh6+uyI1XCnzoUyI=", + "lastModified": 1711401922, + "narHash": "sha256-QoQqXoj8ClGo0sqD/qWKFWezgEwUL0SUh37/vY2jNhc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c726225724e681b3626acc941c6f95d2b0602087", + "rev": "07262b18b97000d16a4bdb003418bd2fb067a932", "type": "github" }, "original": { @@ -686,11 +686,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1711163522, - "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", + "lastModified": 1711333969, + "narHash": "sha256-5PiWGn10DQjMZee5NXzeA6ccsv60iLu+Xtw+mfvkUAs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", + "rev": "57e6b3a9e4ebec5aa121188301f04a6b8c354c9b", "type": "github" }, "original": { @@ -767,11 +767,11 @@ ] }, "locked": { - "lastModified": 1711295162, - "narHash": "sha256-gPTTYKvdnmaLcgOSpqtKHIf8J60J3Z4jAqXTwluxxUk=", + "lastModified": 1711549217, + "narHash": "sha256-O9fCqmgrlRyNpApIVqhYyVSjKWfVzrw9qsEzeTYfBEc=", "owner": "pjones", "repo": "plasma-manager", - "rev": "8a032af55ed686ab21e60530080462a1438812b9", + "rev": "298f345f3ca9528ca88dbbbdcadfc270b7582ded", "type": "github" }, "original": { From 53c1656d6bda8728cf1d129d7f65eae03f51e0cb Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 27 Mar 2024 18:22:58 +0100 Subject: [PATCH 149/199] Replace nheko with cinny --- home-manager/desktop/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-manager/desktop/default.nix b/home-manager/desktop/default.nix index 9941781..f0f6833 100644 --- a/home-manager/desktop/default.nix +++ b/home-manager/desktop/default.nix @@ -56,7 +56,7 @@ kate # Chat applications: - nheko + cinny signal-desktop webcord-vencord From 98481672784b2d14a0995118de4516d4f35f26bc Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 27 Mar 2024 18:24:49 +0100 Subject: [PATCH 150/199] Desktop version though please --- home-manager/desktop/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-manager/desktop/default.nix b/home-manager/desktop/default.nix index f0f6833..c5b237e 100644 --- a/home-manager/desktop/default.nix +++ b/home-manager/desktop/default.nix @@ -56,7 +56,7 @@ kate # Chat applications: - cinny + cinny-desktop signal-desktop webcord-vencord From 8d022bb9de27b12fccab503353ae02e38337b21d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 10:00:15 +0100 Subject: [PATCH 151/199] Replace teams-for-linux with teams --- home-manager/desktop/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-manager/desktop/default.nix b/home-manager/desktop/default.nix index c5b237e..0eec6d0 100644 --- a/home-manager/desktop/default.nix +++ b/home-manager/desktop/default.nix @@ -70,7 +70,7 @@ # Office applications: onlyoffice-bin - teams-for-linux + teams gimp thunderbird From 7611eb763ff16aa0e28a4adca908868ee13ac78c Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 10:01:02 +0100 Subject: [PATCH 152/199] Never mind that's only for darwin --- home-manager/desktop/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-manager/desktop/default.nix b/home-manager/desktop/default.nix index 0eec6d0..c5b237e 100644 --- a/home-manager/desktop/default.nix +++ b/home-manager/desktop/default.nix @@ -70,7 +70,7 @@ # Office applications: onlyoffice-bin - teams + teams-for-linux gimp thunderbird From 740e79cc9f94539a30d570c0cc57476b6ef7562c Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:12:02 +0100 Subject: [PATCH 153/199] Add telegraf logging to queen (hardware logging) --- .../package-configs/dashboard/default.nix | 1 + .../dashboard/telegraf/default.nix | 53 +++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 nixos/server/package-configs/dashboard/telegraf/default.nix diff --git a/nixos/server/package-configs/dashboard/default.nix b/nixos/server/package-configs/dashboard/default.nix index 5bbfb09..6cb610e 100644 --- a/nixos/server/package-configs/dashboard/default.nix +++ b/nixos/server/package-configs/dashboard/default.nix @@ -10,5 +10,6 @@ ./grafana #./loki ./prometheus + ./telegraf ]; } diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix new file mode 100644 index 0000000..dd9df4d --- /dev/null +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -0,0 +1,53 @@ +{ + inputs, + lib, + config, + pkgs, + user, + ... +}: { + services.telegraf = { + enable = true; + extraConfig = { + agent = { + interval = "10s"; + round_interval = true; + metric_batch_size = 1000; + metric_buffer_limit = 10000; + collection_jitter = "0s"; + flush_interval = "10s"; + flush_jitter = "0s"; + precision = ""; + debug = false; + quiet = false; + logfile = ""; + hostname = "queen"; + omit_hostname = false; + }; + inputs = { + cpu = { + percpu = true; + totalcpu = true; + collect_cpu_time = false; + report_active = false; + core_tags = false; + }; + disk = { + ignore_fs = ["tmpfs" "devtmpfs" "devfs" "overlay" "aufs" "squashfs"]; + }; + diskio = {}; + kernel = {}; + mem = {}; + system = {}; + }; + # outputs = { + # influxdb_v2 = { + # urls = ["http://monitoringvm:8086"]; + # token = "\${influx_token}"; + # organization = "home"; + # bucket = "tigstack"; + # }; + # }; + }; + }; +} From 37d5223f3202a048d97241ed5809777712d7221d Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:19:01 +0100 Subject: [PATCH 154/199] Set up influxdb as output --- .../dashboard/telegraf/default.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index dd9df4d..efddb65 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -40,14 +40,14 @@ mem = {}; system = {}; }; - # outputs = { - # influxdb_v2 = { - # urls = ["http://monitoringvm:8086"]; - # token = "\${influx_token}"; - # organization = "home"; - # bucket = "tigstack"; - # }; - # }; + outputs = { + influxdb_v2 = { + database = "telegraf"; + urls = ["localhost:8086"]; + }; + }; }; }; + + services.influxdb.enable = true; } From abba99a2b39c6bfe295ba1bb9b1ded441b0c59a0 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:21:01 +0100 Subject: [PATCH 155/199] no v2 --- nixos/server/package-configs/dashboard/telegraf/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index efddb65..d9b380c 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -41,7 +41,7 @@ system = {}; }; outputs = { - influxdb_v2 = { + influxdb = { database = "telegraf"; urls = ["localhost:8086"]; }; From 4e05dfccf498644e9f34a857cc1d8409ac532786 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:37:35 +0100 Subject: [PATCH 156/199] link telegraf to grafana --- nixos/hosts/queen/secrets/sops.yaml | 5 +++-- .../package-configs/dashboard/telegraf/default.nix | 11 ++++++----- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/nixos/hosts/queen/secrets/sops.yaml b/nixos/hosts/queen/secrets/sops.yaml index 87cc66f..28ef94f 100644 --- a/nixos/hosts/queen/secrets/sops.yaml +++ b/nixos/hosts/queen/secrets/sops.yaml @@ -9,6 +9,7 @@ rpcSecret: ENC[AES256_GCM,data:gOuQSY2RI6rnSnG1,iv:xz1ueq4/UOKYBs5r9Tk4jL0+GyX8u wg-private: ENC[AES256_GCM,data:6BEuNqqG//p5UhRmQ4RPEze6jZdvzK4PEXxlbX2ANYIhFpacj0aZnCr9o/A=,iv:tPlwYdV4I5oA8qG+bfVi1Dpbf7xedByantqsmylZXKQ=,tag:k1BqKqlayOWz5QW1XiAjqQ==,type:str] lillian-password: ENC[AES256_GCM,data:tc+Romv2fL+tdqLLmbwqaF4IHrNZ0VEpnECmW/66FW7IUpjHMyS7YP+pmmvDCzM9afIXMxyPFHGNRwiCmxqstiiNeSeLdo6rDw==,iv:sGeu9aNTgdpThv+0Z/nZKIrat1xNgM0t/KTGPaFbsdI=,tag:kZBHF4X0KO9znog61NwU+Q==,type:str] coturn-auth-secret: ENC[AES256_GCM,data:RYxyATuYIcrGd8h8Gc4CP9ZQ80ekuuwHehnOPYisHejmycgT8a2mWpk+5r3HkFmBNcLDeNlfnhIif5oLHGuHyw==,iv:M2GdNDxP4xpP35FJPTgljbcKpOm6DmEEnIYRItAxDVI=,tag:IiiNXeTi6Yja5PrnKRkhdA==,type:str] +grafana-telegraf-key: ENC[AES256_GCM,data:agpUzG1/n2NAKDt45IgelmDf0CUlC82fmD4f7JdcszNuUg7uCNA7XeaJ6PZtHQ==,iv:keo3i+qSbtXkA5fyCr2S5z9nJS9bXUn5WDiPgWocPU8=,tag:p/nDff10PRhi9pOszp1PnA==,type:str] sops: kms: [] gcp_kms: [] @@ -24,8 +25,8 @@ sops: KzNBMCtUaS9sU21Xc1JUd1FSR29tSkEKyqaDM/WUWjK2l+ahE6sIFYsQ6Qtkf7yz NWFTzsDZBmm9kpSIjchf+PuBuoRHeEKbEH8jnMlYB3J8boEnUnXMlw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-03-24T19:25:02Z" - mac: ENC[AES256_GCM,data:Bd2CcyaZk3C5hOFzCo54dKpBduR2fEr6J78pS3bBVvIDMWAL574k2mtYwzixaXPGbUdPMccRhYZcYyhq6x0A+g99kcZYqDV1lRRBUfg6mJ/eEDLcoD3rYd3XgWFzen6PKTsg/rL35EG2EVVSndZKTx4AI0213lcv6BYeb7cZt/0=,iv:UOxGbO07FTcaknwoUMBwlG+AR4EmZeAd3KJkpPwDJL4=,tag:uyoRQVZ3hM6TWsQB3Lin9g==,type:str] + lastmodified: "2024-03-28T10:35:21Z" + mac: ENC[AES256_GCM,data:LAcaqwQ3GjFSFNVMfg84ljcB4Lb4Kzqgs9WFdi2sXJWeIs+G1/2/Ij4mMSfplirftG6uhU0DJyfP0IEgRvG0oxFOnidsrueWMQ5q1tHmxuOEus7wGeNbvKlNPzb8bMeeVnhTUyvJkeFMb2HPlEIaND15RCF4WoLz56egnPYt0Jg=,iv:8NfgonzySTn+h3c7OCZYWBvfk2TxE5QCNjeSUIUTLi4=,tag:xhbPJkFpxXUn2TpAVrU6Mw==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.8.1 diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index d9b380c..ca94709 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -6,6 +6,8 @@ user, ... }: { + sops.secrets."grafana-telegraf-key".mode = "0440"; + sops.secrets."grafana-telegraf-key".owner = config.users.users.telegraf.name; services.telegraf = { enable = true; extraConfig = { @@ -41,13 +43,12 @@ system = {}; }; outputs = { - influxdb = { - database = "telegraf"; - urls = ["localhost:8086"]; + http = { + url = "http://localhost:${toString config.services.prometheus.port}/api/live/push/custom_stream_id"; + data_format = "influx"; + headers = "Authorization: Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; }; }; }; }; - - services.influxdb.enable = true; } From 1ef1e10abedb7fd40fe0814f7c272c3dc213fd48 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:42:00 +0100 Subject: [PATCH 157/199] Maybe this? --- nixos/server/package-configs/dashboard/telegraf/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index ca94709..1da8ba7 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -46,7 +46,7 @@ http = { url = "http://localhost:${toString config.services.prometheus.port}/api/live/push/custom_stream_id"; data_format = "influx"; - headers = "Authorization: Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; + outputs.http.headers = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; }; }; }; From 59d33d4274266f3aabf6f70bd36d6b83a4c09ac8 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:45:20 +0100 Subject: [PATCH 158/199] Maybe websockets? --- nixos/server/package-configs/dashboard/telegraf/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index 1da8ba7..705a10b 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -43,10 +43,10 @@ system = {}; }; outputs = { - http = { - url = "http://localhost:${toString config.services.prometheus.port}/api/live/push/custom_stream_id"; + websocket = { + url = "ws://localhost:${toString config.services.prometheus.port}/api/live/push/custom_stream_id"; data_format = "influx"; - outputs.http.headers = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; + outputs.websocket.headers = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; }; }; }; From 09923e93ff011231228e7f0dbe1975f69a59e932 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:47:55 +0100 Subject: [PATCH 159/199] Last go --- nixos/server/package-configs/dashboard/telegraf/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index 705a10b..ecef2f6 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -46,7 +46,7 @@ websocket = { url = "ws://localhost:${toString config.services.prometheus.port}/api/live/push/custom_stream_id"; data_format = "influx"; - outputs.websocket.headers = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; + headers = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; }; }; }; From 2d3538be4f2b1475396181e190ad3f4a7afb5bdb Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:52:19 +0100 Subject: [PATCH 160/199] Maybe this then? --- nixos/server/package-configs/dashboard/telegraf/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index ecef2f6..8704bbc 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -46,7 +46,9 @@ websocket = { url = "ws://localhost:${toString config.services.prometheus.port}/api/live/push/custom_stream_id"; data_format = "influx"; - headers = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; + headers = { + Authorisation = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; + }; }; }; }; From e70a27ec79569bc9e64da4f1c1ac0496fa0114d0 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 11:53:28 +0100 Subject: [PATCH 161/199] Use telegraf as the steam ID --- nixos/server/package-configs/dashboard/telegraf/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/dashboard/telegraf/default.nix b/nixos/server/package-configs/dashboard/telegraf/default.nix index 8704bbc..0c6e6ba 100644 --- a/nixos/server/package-configs/dashboard/telegraf/default.nix +++ b/nixos/server/package-configs/dashboard/telegraf/default.nix @@ -44,7 +44,7 @@ }; outputs = { websocket = { - url = "ws://localhost:${toString config.services.prometheus.port}/api/live/push/custom_stream_id"; + url = "ws://localhost:${toString config.services.prometheus.port}/api/live/push/telegraf"; data_format = "influx"; headers = { Authorisation = "Bearer glsa_lqpcKV34Pp0d7eIhKN79E2HTwzWWwN4m_fe64e398"; From 1199eeb960f5d8e553a52cf6ea842467a1222efd Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 13:47:41 +0100 Subject: [PATCH 162/199] Let's try this ipv6 again --- nixos/hosts/queen/configuration.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/nixos/hosts/queen/configuration.nix b/nixos/hosts/queen/configuration.nix index b9b6dcc..24a412a 100644 --- a/nixos/hosts/queen/configuration.nix +++ b/nixos/hosts/queen/configuration.nix @@ -100,7 +100,14 @@ networking.nat.internalInterfaces = ["ve-+"]; networking.nat.externalInterface = "ens18"; networking.enableIPv6 = lib.mkForce true; - networking.nameservers = ["1.1.1.1"]; + networking.nameservers = ["79.143.183.251" "79.143.183.252" "2a02:c207::1:53" "2a02:c207::2:53"]; + + networking.interfaces.ens18.ipv6 = [ + { + address = "2a02:c207:2063:2448::1"; + prefixLength = 64; + } + ]; # Contabo ipv6 nameservers: "2a02:c207::1:53" "2a02:c207::2:53" From d4037d5739da33aa84bc64beecd1225c75cf52f1 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 13:49:44 +0100 Subject: [PATCH 163/199] addresses might be important there --- nixos/hosts/queen/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/queen/configuration.nix b/nixos/hosts/queen/configuration.nix index 24a412a..70a7f2e 100644 --- a/nixos/hosts/queen/configuration.nix +++ b/nixos/hosts/queen/configuration.nix @@ -102,7 +102,7 @@ networking.enableIPv6 = lib.mkForce true; networking.nameservers = ["79.143.183.251" "79.143.183.252" "2a02:c207::1:53" "2a02:c207::2:53"]; - networking.interfaces.ens18.ipv6 = [ + networking.interfaces.ens18.ipv6.addresses = [ { address = "2a02:c207:2063:2448::1"; prefixLength = 64; From 32e4cbd4e0650645ae6c0cdd7fbecbab4cd3681c Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 13:54:25 +0100 Subject: [PATCH 164/199] Re-enable ipv4 --- nixos/hosts/queen/configuration.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/nixos/hosts/queen/configuration.nix b/nixos/hosts/queen/configuration.nix index 70a7f2e..3b19614 100644 --- a/nixos/hosts/queen/configuration.nix +++ b/nixos/hosts/queen/configuration.nix @@ -102,6 +102,12 @@ networking.enableIPv6 = lib.mkForce true; networking.nameservers = ["79.143.183.251" "79.143.183.252" "2a02:c207::1:53" "2a02:c207::2:53"]; + networking.interfaces.ens18.ipv4.addresses = [ + { + address = "62.171.160.195"; + } + ]; + networking.interfaces.ens18.ipv6.addresses = [ { address = "2a02:c207:2063:2448::1"; From 126f5dbe2fb55f1d97b09a4b99eb34cfbe9af27f Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 28 Mar 2024 14:00:06 +0100 Subject: [PATCH 165/199] Add prefixLength to ipv4 --- nixos/hosts/queen/configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/hosts/queen/configuration.nix b/nixos/hosts/queen/configuration.nix index 3b19614..e8fbf46 100644 --- a/nixos/hosts/queen/configuration.nix +++ b/nixos/hosts/queen/configuration.nix @@ -105,6 +105,7 @@ networking.interfaces.ens18.ipv4.addresses = [ { address = "62.171.160.195"; + prefixLength = 32; } ]; From bac26bc9c3782a9332416ba9d814871805d7377e Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Fri, 29 Mar 2024 21:53:54 +0100 Subject: [PATCH 166/199] update flake lock --- flake.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/flake.lock b/flake.lock index 622bb36..781e006 100644 --- a/flake.lock +++ b/flake.lock @@ -137,11 +137,11 @@ ] }, "locked": { - "lastModified": 1711462743, - "narHash": "sha256-3wKGpHy9Kyh98DrziqC/s//60Q0pE17NgbY93L0uWng=", + "lastModified": 1711588700, + "narHash": "sha256-vBB5HoQVnA6c/UrDOhLXKAahEwSRccw2YXYHxD7qoi4=", "owner": "nix-community", "repo": "disko", - "rev": "a6717b1afee7ae955c61eefdf0ce8f864ef78115", + "rev": "502241afa3de2a24865ddcbe4c122f4546e32092", "type": "github" }, "original": { @@ -390,11 +390,11 @@ ] }, "locked": { - "lastModified": 1711554349, - "narHash": "sha256-RypwcWEIFePBI0Hubfj4chanbM/G2yzJzC6wgz+dmS4=", + "lastModified": 1711625603, + "narHash": "sha256-W+9dfqA9bqUIBV5u7jaIARAzMe3kTq/Hp2SpSVXKRQw=", "owner": "nix-community", "repo": "home-manager", - "rev": "179f6acaf7c068c7870542cdae72afec9427a5b0", + "rev": "c0ef0dab55611c676ad7539bf4e41b3ec6fa87d2", "type": "github" }, "original": { @@ -527,11 +527,11 @@ ] }, "locked": { - "lastModified": 1711375484, - "narHash": "sha256-+d4HqehyQvuHUKR8Nv9HGGd/SP5wjg3MA/hEYJBWQq0=", + "lastModified": 1711626141, + "narHash": "sha256-0qV1pHeIyUZ18cp8ijQnMf7uV+Uk4+UqTCC6yGSGWvk=", "owner": "nix-community", "repo": "nixos-generators", - "rev": "2b3720c7af2271be8cee713cd2f69c5127b0a8e4", + "rev": "63194fceafbfe583a9eb7d16ab499adc0a6c0bc2", "type": "github" }, "original": { @@ -622,11 +622,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1711333969, - "narHash": "sha256-5PiWGn10DQjMZee5NXzeA6ccsv60iLu+Xtw+mfvkUAs=", + "lastModified": 1711523803, + "narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "57e6b3a9e4ebec5aa121188301f04a6b8c354c9b", + "rev": "2726f127c15a4cc9810843b96cad73c7eb39e443", "type": "github" }, "original": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1711401922, - "narHash": "sha256-QoQqXoj8ClGo0sqD/qWKFWezgEwUL0SUh37/vY2jNhc=", + "lastModified": 1711715736, + "narHash": "sha256-9slQ609YqT9bT/MNX9+5k5jltL9zgpn36DpFB7TkttM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "07262b18b97000d16a4bdb003418bd2fb067a932", + "rev": "807c549feabce7eddbf259dbdcec9e0600a0660d", "type": "github" }, "original": { @@ -686,11 +686,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1711333969, - "narHash": "sha256-5PiWGn10DQjMZee5NXzeA6ccsv60iLu+Xtw+mfvkUAs=", + "lastModified": 1711523803, + "narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "57e6b3a9e4ebec5aa121188301f04a6b8c354c9b", + "rev": "2726f127c15a4cc9810843b96cad73c7eb39e443", "type": "github" }, "original": { From 168d84170436c4f4147344cb77141f0c853aec79 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 17:59:43 +0200 Subject: [PATCH 167/199] update flake lock --- flake.lock | 72 +++++++++++++++++++++++++++--------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/flake.lock b/flake.lock index 781e006..4b69ef8 100644 --- a/flake.lock +++ b/flake.lock @@ -52,11 +52,11 @@ ] }, "locked": { - "lastModified": 1711506264, - "narHash": "sha256-GaQJvPyEkZu3YMdV9m1UENoeE10fkV6PcnLUtzPmuOY=", + "lastModified": 1711850778, + "narHash": "sha256-LUctBrbSTAZ6TRtXsWju4AuNf9OhcbxNni0PRBGKE1c=", "owner": "girlbossceo", "repo": "conduwuit", - "rev": "051668b62b76270dc8ad3b011c6adbfe8ee8bde2", + "rev": "00ddc1c88ec9137225840d9d788db0bc6f6939d1", "type": "github" }, "original": { @@ -194,11 +194,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1709619709, - "narHash": "sha256-l6EPVJfwfelWST7qWQeP6t/TDK3HHv5uUB1b2vw4mOQ=", + "lastModified": 1711606966, + "narHash": "sha256-nTaO7ZDL4D02dVC5ktqnXNiNuODBUHyE4qEcFjAUCQY=", "owner": "nix-community", "repo": "fenix", - "rev": "c8943ea9e98d41325ff57d4ec14736d330b321b2", + "rev": "aa45c3e901ea42d6633af083c0c555efaf948b17", "type": "github" }, "original": { @@ -312,11 +312,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1709126324, - "narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "d465f4819400de7c8d874d50b982301f28a84605", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -390,11 +390,11 @@ ] }, "locked": { - "lastModified": 1711625603, - "narHash": "sha256-W+9dfqA9bqUIBV5u7jaIARAzMe3kTq/Hp2SpSVXKRQw=", + "lastModified": 1711868868, + "narHash": "sha256-QpZanlbVu6Gb2K96u3vgu0F2BvZD74+fOsIFWcYEXoY=", "owner": "nix-community", "repo": "home-manager", - "rev": "c0ef0dab55611c676ad7539bf4e41b3ec6fa87d2", + "rev": "30f2ec39519f4f5a8a96af808c439e730c15aeab", "type": "github" }, "original": { @@ -469,11 +469,11 @@ }, "nix-filter": { "locked": { - "lastModified": 1705332318, - "narHash": "sha256-kcw1yFeJe9N4PjQji9ZeX47jg0p9A0DuU4djKvg1a7I=", + "lastModified": 1710156097, + "narHash": "sha256-1Wvk8UP7PXdf8bCCaEoMnOT1qe5/Duqgj+rL8sRQsSM=", "owner": "numtide", "repo": "nix-filter", - "rev": "3449dc925982ad46246cfc36469baf66e1b64f17", + "rev": "3342559a24e85fc164b295c3444e8a139924675b", "type": "github" }, "original": { @@ -606,11 +606,11 @@ }, "nixpkgs-stable_3": { "locked": { - "lastModified": 1711233294, - "narHash": "sha256-eEu5y4J145BYDw9o/YEmeJyqh8blgnZwuz9k234zuWc=", + "lastModified": 1711819797, + "narHash": "sha256-tNeB6emxj74Y6ctwmsjtMlzUMn458sBmwnD35U5KIM4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68", + "rev": "2b4e3ca0091049c6fbb4908c66b05b77eaef9f0c", "type": "github" }, "original": { @@ -622,11 +622,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1711523803, - "narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=", + "lastModified": 1711703276, + "narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2726f127c15a4cc9810843b96cad73c7eb39e443", + "rev": "d8fe5e6c92d0d190646fb9f1056741a229980089", "type": "github" }, "original": { @@ -686,11 +686,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1711523803, - "narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=", + "lastModified": 1711703276, + "narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2726f127c15a4cc9810843b96cad73c7eb39e443", + "rev": "d8fe5e6c92d0d190646fb9f1056741a229980089", "type": "github" }, "original": { @@ -717,11 +717,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1711200738, - "narHash": "sha256-dkJmk/ET/tRV4007O6kU101UEg1svUwiyk/zEEX9Tdg=", + "lastModified": 1711715736, + "narHash": "sha256-9slQ609YqT9bT/MNX9+5k5jltL9zgpn36DpFB7TkttM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "20bc93ca7b2158ebc99b8cef987a2173a81cde35", + "rev": "807c549feabce7eddbf259dbdcec9e0600a0660d", "type": "github" }, "original": { @@ -767,11 +767,11 @@ ] }, "locked": { - "lastModified": 1711549217, - "narHash": "sha256-O9fCqmgrlRyNpApIVqhYyVSjKWfVzrw9qsEzeTYfBEc=", + "lastModified": 1711880258, + "narHash": "sha256-4lcNTaKYxKXqAD+OrTC68T2W/Cr69VSogS+R5tjdn+M=", "owner": "pjones", "repo": "plasma-manager", - "rev": "298f345f3ca9528ca88dbbbdcadfc270b7582ded", + "rev": "22b423b9c6f157373d56413835d1d65ea4c5f481", "type": "github" }, "original": { @@ -834,11 +834,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1709571018, - "narHash": "sha256-ISFrxHxE0J5g7lDAscbK88hwaT5uewvWoma9TlFmRzM=", + "lastModified": 1711562745, + "narHash": "sha256-s/YOyBM0vumhkqCFi8CnV5imFlC5JJrGia8CmEXyQkM=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "9f14343f9ee24f53f17492c5f9b653427e2ad15e", + "rev": "ad51a17c627b4ca57f83f0dc1f3bb5f3f17e6d0b", "type": "github" }, "original": { @@ -901,11 +901,11 @@ "nixpkgs-stable": "nixpkgs-stable_3" }, "locked": { - "lastModified": 1711249319, - "narHash": "sha256-N+Pp3/8H+rd7cO71VNV/ovV/Kwt+XNeUHNhsmyTabdM=", + "lastModified": 1711855048, + "narHash": "sha256-HxegAPnQJSC4cbEbF4Iq3YTlFHZKLiNTk8147EbLdGg=", "owner": "Mic92", "repo": "sops-nix", - "rev": "405987a66cce9a4a82f321f11b205982a7127c88", + "rev": "99b1e37f9fc0960d064a7862eb7adfb92e64fa10", "type": "github" }, "original": { From be53c14edcbf3fbd090d0c7a7c62886617246265 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 19:52:23 +0200 Subject: [PATCH 168/199] Use steamcmd instead of steam --- pkgs/auto-mount/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 37a8ef2..8f44c02 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -16,7 +16,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steam pkgs.extest]; + runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steamPackages.steamcmd]; text = '' set -euo pipefail @@ -76,7 +76,7 @@ writeShellApplication # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" >> /home/lillian/steam.txt - systemd-run -M 1000@ --user --collect --wait sh -c "export LD_PRELOAD=${pkgs.extest}/lib/libextest.so:$LD_PRELOAD ${pkgs.steam}/bin/steam steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steamPackages.steamcmd}/bin/steamcmd steam://''${command}/''${encoded@Q}" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" fi From 540cdc9b91d3241cca4d4f19dbfd6109765ddad9 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 20:11:22 +0200 Subject: [PATCH 169/199] That isn't what I thought it was --- pkgs/auto-mount/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/auto-mount/default.nix b/pkgs/auto-mount/default.nix index 8f44c02..37a8ef2 100644 --- a/pkgs/auto-mount/default.nix +++ b/pkgs/auto-mount/default.nix @@ -16,7 +16,7 @@ writeShellApplication name = "auto-mount"; - runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steamPackages.steamcmd]; + runtimeInputs = [jq coreutils udisks util-linux toybox pkgs.steam pkgs.extest]; text = '' set -euo pipefail @@ -76,7 +76,7 @@ writeShellApplication # TODO use -ifrunning and check return value - if there was a steam process and it returns -1, the message wasn't sent # need to retry until either steam process is gone or -ifrunning returns 0, or timeout i guess echo "Sent URL to steam: steam://''${command}/''${arg} (steam://''${command}/''${encoded})" >> /home/lillian/steam.txt - systemd-run -M 1000@ --user --collect --wait sh -c "${pkgs.steamPackages.steamcmd}/bin/steamcmd steam://''${command}/''${encoded@Q}" + systemd-run -M 1000@ --user --collect --wait sh -c "export LD_PRELOAD=${pkgs.extest}/lib/libextest.so:$LD_PRELOAD ${pkgs.steam}/bin/steam steam://''${command}/''${encoded@Q}" else echo "Could not send steam URL steam://''${command}/''${arg} (steam://''${command}/''${encoded}) -- steam not running" fi From 208ebdddd1e11d156681986b76dd13894abf8ef0 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 20:15:13 +0200 Subject: [PATCH 170/199] Remove a comment from queen, enable x11 on shodan for steam input workaround... --- nixos/hosts/queen/configuration.nix | 2 -- nixos/hosts/shodan/configuration.nix | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/nixos/hosts/queen/configuration.nix b/nixos/hosts/queen/configuration.nix index e8fbf46..ee40678 100644 --- a/nixos/hosts/queen/configuration.nix +++ b/nixos/hosts/queen/configuration.nix @@ -116,8 +116,6 @@ } ]; - # Contabo ipv6 nameservers: "2a02:c207::1:53" "2a02:c207::2:53" - # Open ports in the firewall. networking.firewall = { enable = true; diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 341f55a..a11f1df 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -134,9 +134,10 @@ services.desktopManager.plasma6.enable = true; programs.kdeconnect.enable = true; + services.xserver.displayManager.defaultSession = "plasmax11"; services.xserver.displayManager.sddm.settings = { Autologin = { - Session = "plasma.desktop"; + Session = "plasmax11.desktop"; User = "lillian"; }; }; From ae1e57b209c3d185804421760a1205456052c6d6 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 20:15:54 +0200 Subject: [PATCH 171/199] Force disable sddm wayland too --- nixos/hosts/shodan/configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index a11f1df..9fad544 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -135,6 +135,7 @@ programs.kdeconnect.enable = true; services.xserver.displayManager.defaultSession = "plasmax11"; + services.xserver.displayManager.sddm.wayland.enable = lib.mkForce false; services.xserver.displayManager.sddm.settings = { Autologin = { Session = "plasmax11.desktop"; From 0fe6c445a14c5f0c6a028627fc5423c5ac63b345 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 21:03:16 +0200 Subject: [PATCH 172/199] Plasmax11 for desktop for now, look at https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/issues/12 for updates on cursor fix in wayland --- nixos/hosts/shodan/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/hosts/shodan/configuration.nix b/nixos/hosts/shodan/configuration.nix index 9fad544..e5bbadb 100644 --- a/nixos/hosts/shodan/configuration.nix +++ b/nixos/hosts/shodan/configuration.nix @@ -100,7 +100,7 @@ jovian.steam.autoStart = true; #What desktop to start when switching to desktop session - jovian.steam.desktopSession = "plasma"; + jovian.steam.desktopSession = "plasmax11"; jovian.steam.user = "lillian"; From a200642072bcfe74fcc352c9cd15bdd671fb26e0 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 22:06:47 +0200 Subject: [PATCH 173/199] Enable cinny web server via docker --- .../server/package-configs/cinny/default.nix | 31 +++++++++++++++++++ nixos/server/package-configs/default.nix | 1 + 2 files changed, 32 insertions(+) create mode 100644 nixos/server/package-configs/cinny/default.nix diff --git a/nixos/server/package-configs/cinny/default.nix b/nixos/server/package-configs/cinny/default.nix new file mode 100644 index 0000000..5f7d160 --- /dev/null +++ b/nixos/server/package-configs/cinny/default.nix @@ -0,0 +1,31 @@ +{ + config, + pkgs, + inputs, + lib, + ... +}: let + port = 2143; +in { + virtualisation.oci-containers.containers."cinny" = { + autoStart = true; + ports = ["${toString port}:80"]; + image = "cinny:latest"; + }; + + services.nginx = { + enable = true; + virtualHosts = { + "cinny.gladtherescake.eu" = { + ## Force HTTP redirect to HTTPS + forceSSL = true; + ## LetsEncrypt + enableACME = true; + locations."/" = { + proxyPass = "http://localhost:${toString port}"; + proxyWebsockets = true; + }; + }; + }; + }; +} diff --git a/nixos/server/package-configs/default.nix b/nixos/server/package-configs/default.nix index ff7d535..4263264 100644 --- a/nixos/server/package-configs/default.nix +++ b/nixos/server/package-configs/default.nix @@ -16,5 +16,6 @@ ./roundcube ./coturn ./dashboard + ./cinny ]; } From 0402d804f30ea50e8fe8b3aa13faa61fa202ad47 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 22:19:45 +0200 Subject: [PATCH 174/199] Tried to change the format of the image pull, this might work --- nixos/server/package-configs/cinny/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/cinny/default.nix b/nixos/server/package-configs/cinny/default.nix index 5f7d160..6b18ddf 100644 --- a/nixos/server/package-configs/cinny/default.nix +++ b/nixos/server/package-configs/cinny/default.nix @@ -10,7 +10,7 @@ in { virtualisation.oci-containers.containers."cinny" = { autoStart = true; ports = ["${toString port}:80"]; - image = "cinny:latest"; + image = "ajbura/cinny:latest"; }; services.nginx = { From 8ac96dcb1aa19fdf59a96bd2b58ce71f193d3219 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 22:28:45 +0200 Subject: [PATCH 175/199] Added todo comment to cinny --- nixos/server/package-configs/cinny/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/server/package-configs/cinny/default.nix b/nixos/server/package-configs/cinny/default.nix index 6b18ddf..f81163e 100644 --- a/nixos/server/package-configs/cinny/default.nix +++ b/nixos/server/package-configs/cinny/default.nix @@ -7,6 +7,7 @@ }: let port = 2143; in { + #TODO: set default server and disable changing that virtualisation.oci-containers.containers."cinny" = { autoStart = true; ports = ["${toString port}:80"]; From 9de3525b14c6a399aed9ce309e08dcc14aac1681 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Sun, 31 Mar 2024 23:52:03 +0200 Subject: [PATCH 176/199] Add firefox-pwa to desktops --- nixos/desktop/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix index 660e2ec..818137a 100644 --- a/nixos/desktop/default.nix +++ b/nixos/desktop/default.nix @@ -36,6 +36,7 @@ aha bcachefs-tools direnv + firefoxpwa git-filter-repo gnupg pciutils From 8942d9f06253602ceb8303306667f5b805f24ac2 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 00:09:56 +0200 Subject: [PATCH 177/199] Maybe this will make firefox-pwa work, in home manager now, with an override --- home-manager/desktop/default.nix | 3 ++- nixos/desktop/default.nix | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/home-manager/desktop/default.nix b/home-manager/desktop/default.nix index c5b237e..cfa99f2 100644 --- a/home-manager/desktop/default.nix +++ b/home-manager/desktop/default.nix @@ -88,7 +88,8 @@ zsh # Web browsing: - firefox + (firefox.override {nativeMessagingHosts = [pkgs.firefoxpwa];}) + firefox-pwa librewolf ungoogled-chromium ]; diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix index 818137a..660e2ec 100644 --- a/nixos/desktop/default.nix +++ b/nixos/desktop/default.nix @@ -36,7 +36,6 @@ aha bcachefs-tools direnv - firefoxpwa git-filter-repo gnupg pciutils From ae6f52e427b8cb60b6f08cf56675eb332090810f Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 00:11:01 +0200 Subject: [PATCH 178/199] Not firefox-pwa but firefoxpwa --- home-manager/desktop/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-manager/desktop/default.nix b/home-manager/desktop/default.nix index cfa99f2..617220a 100644 --- a/home-manager/desktop/default.nix +++ b/home-manager/desktop/default.nix @@ -89,7 +89,7 @@ # Web browsing: (firefox.override {nativeMessagingHosts = [pkgs.firefoxpwa];}) - firefox-pwa + firefoxpwa librewolf ungoogled-chromium ]; From 09639dcc45792403ae796fcf26699b16100dd223 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 14:59:04 +0200 Subject: [PATCH 179/199] Add some informational tools to desktops --- nixos/desktop/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nixos/desktop/default.nix b/nixos/desktop/default.nix index 660e2ec..96f7834 100644 --- a/nixos/desktop/default.nix +++ b/nixos/desktop/default.nix @@ -35,6 +35,7 @@ # System tools aha bcachefs-tools + clinfo direnv git-filter-repo gnupg @@ -44,7 +45,10 @@ sbctl tpm2-tools tpm2-tss + virtualgl + vulkan-tools waydroid + wayland-utils xwaylandvideobridge yubikey-personalization zsh From 3f386b84500c48797aae6ddcd399cfe249d7f8f3 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 18:14:57 +0200 Subject: [PATCH 180/199] Change cinny config to only use my server! --- nixos/server/package-configs/cinny/config.json | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 nixos/server/package-configs/cinny/config.json diff --git a/nixos/server/package-configs/cinny/config.json b/nixos/server/package-configs/cinny/config.json new file mode 100644 index 0000000..508b2ba --- /dev/null +++ b/nixos/server/package-configs/cinny/config.json @@ -0,0 +1,7 @@ +{ + "defaultHomeserver": 2, + "homeserverList": [ + "matrix.gladtherescake.eu" + ], + "allowCustomHomeservers": false +} \ No newline at end of file From 406ef2fd37206a08acc6b844ba780a174a012696 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 18:15:08 +0200 Subject: [PATCH 181/199] And that part too --- nixos/server/package-configs/cinny/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/server/package-configs/cinny/default.nix b/nixos/server/package-configs/cinny/default.nix index f81163e..827d627 100644 --- a/nixos/server/package-configs/cinny/default.nix +++ b/nixos/server/package-configs/cinny/default.nix @@ -11,6 +11,9 @@ in { virtualisation.oci-containers.containers."cinny" = { autoStart = true; ports = ["${toString port}:80"]; + volumes = [ + "./config.json:/app/config.json" + ]; image = "ajbura/cinny:latest"; }; From f57c4f03b42e242a7b3150df72aefd20ed9b06e8 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 18:24:56 +0200 Subject: [PATCH 182/199] Maybe I have to write the file with nix? --- nixos/server/package-configs/cinny/default.nix | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/nixos/server/package-configs/cinny/default.nix b/nixos/server/package-configs/cinny/default.nix index 827d627..41175e3 100644 --- a/nixos/server/package-configs/cinny/default.nix +++ b/nixos/server/package-configs/cinny/default.nix @@ -6,13 +6,24 @@ ... }: let port = 2143; + configFile = + pkgs.writeText "config.json" + '' + { + "defaultHomeserver": 2, + "homeserverList": [ + "matrix.gladtherescake.eu" + ], + "allowCustomHomeservers": false + } + ''; in { #TODO: set default server and disable changing that virtualisation.oci-containers.containers."cinny" = { autoStart = true; ports = ["${toString port}:80"]; volumes = [ - "./config.json:/app/config.json" + "${configFile}:/app/config.json" ]; image = "ajbura/cinny:latest"; }; From 99468bfad3574cbdd85fd1ed2094936f1b860d6b Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 18:30:19 +0200 Subject: [PATCH 183/199] Let's try changing the defaultHomeserver setting --- nixos/server/package-configs/cinny/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/server/package-configs/cinny/default.nix b/nixos/server/package-configs/cinny/default.nix index 41175e3..1cbfc4a 100644 --- a/nixos/server/package-configs/cinny/default.nix +++ b/nixos/server/package-configs/cinny/default.nix @@ -9,8 +9,8 @@ configFile = pkgs.writeText "config.json" '' - { - "defaultHomeserver": 2, + { + "defaultHomeserver": 0, "homeserverList": [ "matrix.gladtherescake.eu" ], From 260f9021606d5dd5213cfdc2a70a0515ad62c282 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 18:34:48 +0200 Subject: [PATCH 184/199] Remove todo, we done that --- nixos/server/package-configs/cinny/config.json | 7 ------- nixos/server/package-configs/cinny/default.nix | 1 - 2 files changed, 8 deletions(-) delete mode 100644 nixos/server/package-configs/cinny/config.json diff --git a/nixos/server/package-configs/cinny/config.json b/nixos/server/package-configs/cinny/config.json deleted file mode 100644 index 508b2ba..0000000 --- a/nixos/server/package-configs/cinny/config.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "defaultHomeserver": 2, - "homeserverList": [ - "matrix.gladtherescake.eu" - ], - "allowCustomHomeservers": false -} \ No newline at end of file diff --git a/nixos/server/package-configs/cinny/default.nix b/nixos/server/package-configs/cinny/default.nix index 1cbfc4a..6c06e4a 100644 --- a/nixos/server/package-configs/cinny/default.nix +++ b/nixos/server/package-configs/cinny/default.nix @@ -18,7 +18,6 @@ } ''; in { - #TODO: set default server and disable changing that virtualisation.oci-containers.containers."cinny" = { autoStart = true; ports = ["${toString port}:80"]; From 9429c349352d47b5b231398eef482665adefea89 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 21:14:33 +0200 Subject: [PATCH 185/199] Add ipv6 to coturn --- nixos/server/package-configs/coturn/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/server/package-configs/coturn/default.nix b/nixos/server/package-configs/coturn/default.nix index e37c03d..4371ea1 100644 --- a/nixos/server/package-configs/coturn/default.nix +++ b/nixos/server/package-configs/coturn/default.nix @@ -14,6 +14,7 @@ realm = "turn.gladtherescake.eu"; relay-ips = [ "62.171.160.195" + "2a02:c207:2063:2448::1" ]; no-tcp-relay = true; extraConfig = " From 5446fb64fb6ceffb11da863b5edee20dfe8c637a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 21:42:59 +0200 Subject: [PATCH 186/199] Small update to turn server --- nixos/server/package-configs/coturn/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/server/package-configs/coturn/default.nix b/nixos/server/package-configs/coturn/default.nix index 4371ea1..24b3794 100644 --- a/nixos/server/package-configs/coturn/default.nix +++ b/nixos/server/package-configs/coturn/default.nix @@ -8,10 +8,10 @@ users.users.nginx.extraGroups = ["turnserver"]; services.coturn = { enable = true; - lt-cred-mech = true; use-auth-secret = true; - static-auth-secret-file = config.sops.secrets."coturn-auth-secret".path; + static-auth-secret = "cPKWEn4Fo5TAJoE7iX3xeVOaMVE4afeRN1iRGWYfbkWbkaZMxTpnmazHyH6c6yXT"; realm = "turn.gladtherescake.eu"; + name = "turn.gladtherescake.eu"; relay-ips = [ "62.171.160.195" "2a02:c207:2063:2448::1" From 41304da00dda51dcc9ec8420dba921198e995931 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 21:44:31 +0200 Subject: [PATCH 187/199] Name doesn't exist, remove that --- nixos/server/package-configs/coturn/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/server/package-configs/coturn/default.nix b/nixos/server/package-configs/coturn/default.nix index 24b3794..84ac288 100644 --- a/nixos/server/package-configs/coturn/default.nix +++ b/nixos/server/package-configs/coturn/default.nix @@ -11,7 +11,6 @@ use-auth-secret = true; static-auth-secret = "cPKWEn4Fo5TAJoE7iX3xeVOaMVE4afeRN1iRGWYfbkWbkaZMxTpnmazHyH6c6yXT"; realm = "turn.gladtherescake.eu"; - name = "turn.gladtherescake.eu"; relay-ips = [ "62.171.160.195" "2a02:c207:2063:2448::1" From 814091bfa7f8f3751345936590b5cc0c6b0eab2a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Mon, 1 Apr 2024 21:54:15 +0200 Subject: [PATCH 188/199] Enable tcp coturn route --- nixos/server/package-configs/coturn/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/server/package-configs/coturn/default.nix b/nixos/server/package-configs/coturn/default.nix index 84ac288..4539247 100644 --- a/nixos/server/package-configs/coturn/default.nix +++ b/nixos/server/package-configs/coturn/default.nix @@ -15,7 +15,6 @@ "62.171.160.195" "2a02:c207:2063:2448::1" ]; - no-tcp-relay = true; extraConfig = " cipher-list=\"HIGH\" no-loopback-peers From 3fcdc11ed65a2d5d778bacd9b6096e0425803230 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Wed, 3 Apr 2024 19:59:31 +0200 Subject: [PATCH 189/199] update flake lock --- flake.lock | 54 +++++++++++++++++++++++++++--------------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/flake.lock b/flake.lock index 4b69ef8..4fed6e6 100644 --- a/flake.lock +++ b/flake.lock @@ -52,11 +52,11 @@ ] }, "locked": { - "lastModified": 1711850778, - "narHash": "sha256-LUctBrbSTAZ6TRtXsWju4AuNf9OhcbxNni0PRBGKE1c=", + "lastModified": 1712163166, + "narHash": "sha256-Al0RdDZF8DM1uZ5m1tmOxtPNvFrRpoczHWGbJ57KfuI=", "owner": "girlbossceo", "repo": "conduwuit", - "rev": "00ddc1c88ec9137225840d9d788db0bc6f6939d1", + "rev": "bd69d9b565fb403fc78fbeb633fb374ec3f4b49c", "type": "github" }, "original": { @@ -137,11 +137,11 @@ ] }, "locked": { - "lastModified": 1711588700, - "narHash": "sha256-vBB5HoQVnA6c/UrDOhLXKAahEwSRccw2YXYHxD7qoi4=", + "lastModified": 1711934712, + "narHash": "sha256-sBDe+QmX/QohlnKeSEzrftcXyZL5FY09OMjZ59Rpyy4=", "owner": "nix-community", "repo": "disko", - "rev": "502241afa3de2a24865ddcbe4c122f4546e32092", + "rev": "611c9ea53250f7bb22286b3d26872280a0e608f9", "type": "github" }, "original": { @@ -390,11 +390,11 @@ ] }, "locked": { - "lastModified": 1711868868, - "narHash": "sha256-QpZanlbVu6Gb2K96u3vgu0F2BvZD74+fOsIFWcYEXoY=", + "lastModified": 1712093955, + "narHash": "sha256-94I0sXz6fiVBvUAk2tg6t3UpM5rOImj4JTSTNFbg64s=", "owner": "nix-community", "repo": "home-manager", - "rev": "30f2ec39519f4f5a8a96af808c439e730c15aeab", + "rev": "80546b220e95a575c66c213af1b09fe255299438", "type": "github" }, "original": { @@ -506,11 +506,11 @@ }, "nixlib": { "locked": { - "lastModified": 1711241261, - "narHash": "sha256-knrTvpl81yGFHIpm1SsLDApe0thFkw1cl3ISAMPmP/0=", + "lastModified": 1711846064, + "narHash": "sha256-cqfX0QJNEnge3a77VnytM0Q6QZZ0DziFXt6tSCV8ZSc=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "b2a1eeef8c185f6bd27432b053ff09d773244cbc", + "rev": "90b1a963ff84dc532db92f678296ff2499a60a87", "type": "github" }, "original": { @@ -527,11 +527,11 @@ ] }, "locked": { - "lastModified": 1711626141, - "narHash": "sha256-0qV1pHeIyUZ18cp8ijQnMf7uV+Uk4+UqTCC6yGSGWvk=", + "lastModified": 1711932680, + "narHash": "sha256-CEpVtyB7uyRprTuiG+lpWWMvM/C0CbY/dbBuxT5BDwM=", "owner": "nix-community", "repo": "nixos-generators", - "rev": "63194fceafbfe583a9eb7d16ab499adc0a6c0bc2", + "rev": "1f4c32ca4295bb7cca1e48a2f39b65490b249b0b", "type": "github" }, "original": { @@ -622,11 +622,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1711703276, - "narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=", + "lastModified": 1712122226, + "narHash": "sha256-pmgwKs8Thu1WETMqCrWUm0CkN1nmCKX3b51+EXsAZyY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d8fe5e6c92d0d190646fb9f1056741a229980089", + "rev": "08b9151ed40350725eb40b1fe96b0b86304a654b", "type": "github" }, "original": { @@ -638,11 +638,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1711715736, - "narHash": "sha256-9slQ609YqT9bT/MNX9+5k5jltL9zgpn36DpFB7TkttM=", + "lastModified": 1712059183, + "narHash": "sha256-I/xinxexiKuaIsGBaHstfm8Y51lmKdTAvDwzB2CmACc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "807c549feabce7eddbf259dbdcec9e0600a0660d", + "rev": "4b455dc2048f73a79eb3713f342369ff58f93e0b", "type": "github" }, "original": { @@ -686,11 +686,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1711703276, - "narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=", + "lastModified": 1712122226, + "narHash": "sha256-pmgwKs8Thu1WETMqCrWUm0CkN1nmCKX3b51+EXsAZyY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d8fe5e6c92d0d190646fb9f1056741a229980089", + "rev": "08b9151ed40350725eb40b1fe96b0b86304a654b", "type": "github" }, "original": { @@ -767,11 +767,11 @@ ] }, "locked": { - "lastModified": 1711880258, - "narHash": "sha256-4lcNTaKYxKXqAD+OrTC68T2W/Cr69VSogS+R5tjdn+M=", + "lastModified": 1712081763, + "narHash": "sha256-+xImkX19gde0Qac6kbJtJAXKXTOgcUE5z3RsBxVtseo=", "owner": "pjones", "repo": "plasma-manager", - "rev": "22b423b9c6f157373d56413835d1d65ea4c5f481", + "rev": "96a90a7f5ce6b29e01d7da83d082e870e4462174", "type": "github" }, "original": { From 2d0bc89b69c42e15c8c46a2758238f79526e7197 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 18:44:53 +0200 Subject: [PATCH 190/199] Add firefox sync to server --- nixos/hosts/queen/secrets/sops.yaml | 5 +++-- nixos/server/package-configs/default.nix | 1 + .../package-configs/firefox-sync/default.nix | 21 +++++++++++++++++++ 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 nixos/server/package-configs/firefox-sync/default.nix diff --git a/nixos/hosts/queen/secrets/sops.yaml b/nixos/hosts/queen/secrets/sops.yaml index 28ef94f..d8c5ab7 100644 --- a/nixos/hosts/queen/secrets/sops.yaml +++ b/nixos/hosts/queen/secrets/sops.yaml @@ -10,6 +10,7 @@ wg-private: ENC[AES256_GCM,data:6BEuNqqG//p5UhRmQ4RPEze6jZdvzK4PEXxlbX2ANYIhFpac lillian-password: ENC[AES256_GCM,data:tc+Romv2fL+tdqLLmbwqaF4IHrNZ0VEpnECmW/66FW7IUpjHMyS7YP+pmmvDCzM9afIXMxyPFHGNRwiCmxqstiiNeSeLdo6rDw==,iv:sGeu9aNTgdpThv+0Z/nZKIrat1xNgM0t/KTGPaFbsdI=,tag:kZBHF4X0KO9znog61NwU+Q==,type:str] coturn-auth-secret: ENC[AES256_GCM,data:RYxyATuYIcrGd8h8Gc4CP9ZQ80ekuuwHehnOPYisHejmycgT8a2mWpk+5r3HkFmBNcLDeNlfnhIif5oLHGuHyw==,iv:M2GdNDxP4xpP35FJPTgljbcKpOm6DmEEnIYRItAxDVI=,tag:IiiNXeTi6Yja5PrnKRkhdA==,type:str] grafana-telegraf-key: ENC[AES256_GCM,data:agpUzG1/n2NAKDt45IgelmDf0CUlC82fmD4f7JdcszNuUg7uCNA7XeaJ6PZtHQ==,iv:keo3i+qSbtXkA5fyCr2S5z9nJS9bXUn5WDiPgWocPU8=,tag:p/nDff10PRhi9pOszp1PnA==,type:str] +sync-secrets: ENC[AES256_GCM,data:AwCgqfSXmYVGnCV5PJ5Ql44IiutTS76F1H7Ow7gB4mQQ8PtiAsmArzpAXd7LzsXedm55X04U+GvkcbM9cwPcF+psyb3Zi8EnI/mjnI9MgFyySSEcosJZVAtCpXGIMyYgRXtF5OBh5CzupAG059d1TDAqrSpLXMuSDdypTaOMHxnlq5q1swfpzhhY3PVgUKVFXdjZLX8aF3JTE9ceVxFsB+traLzOQsl+QKty0x0mpuqR97zkMCchX7bTwgUgbl7phzTvmwV8Qw==,iv:gkZs5NB9+CLfz4kfV4ha2llZQPP81uuXRKqUlASgpiA=,tag:DXkiG0ZFHLHlVhwLwtv/XQ==,type:str] sops: kms: [] gcp_kms: [] @@ -25,8 +26,8 @@ sops: KzNBMCtUaS9sU21Xc1JUd1FSR29tSkEKyqaDM/WUWjK2l+ahE6sIFYsQ6Qtkf7yz NWFTzsDZBmm9kpSIjchf+PuBuoRHeEKbEH8jnMlYB3J8boEnUnXMlw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-03-28T10:35:21Z" - mac: ENC[AES256_GCM,data:LAcaqwQ3GjFSFNVMfg84ljcB4Lb4Kzqgs9WFdi2sXJWeIs+G1/2/Ij4mMSfplirftG6uhU0DJyfP0IEgRvG0oxFOnidsrueWMQ5q1tHmxuOEus7wGeNbvKlNPzb8bMeeVnhTUyvJkeFMb2HPlEIaND15RCF4WoLz56egnPYt0Jg=,iv:8NfgonzySTn+h3c7OCZYWBvfk2TxE5QCNjeSUIUTLi4=,tag:xhbPJkFpxXUn2TpAVrU6Mw==,type:str] + lastmodified: "2024-04-04T16:38:10Z" + mac: ENC[AES256_GCM,data:KqkNjZe/rMhiWNS3SeYHm+b23u1LD1jq3f0+jB/BVmy6pDQDTNgA/wWHF/HcorU2Z7TOdjofJPuvRuF6C8ec4RCtTxX2ubIYWV4H3BynYxrEuEsIN8EnPJDcFFc92n9PKzoWnHo2NK1a4ZX+DxYVjDDdjhOMWj/kqWRWZRU+qEw=,iv:rarq3mCSfDFzbIdSIe+3mTNTnoZwFZ2uPkYMGt/xqos=,tag:rCD6SUpwOktRo7fM3Irv7g==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.8.1 diff --git a/nixos/server/package-configs/default.nix b/nixos/server/package-configs/default.nix index 4263264..39f76ab 100644 --- a/nixos/server/package-configs/default.nix +++ b/nixos/server/package-configs/default.nix @@ -17,5 +17,6 @@ ./coturn ./dashboard ./cinny + ./firefox-sync ]; } diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix new file mode 100644 index 0000000..3d8f71e --- /dev/null +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -0,0 +1,21 @@ +{ + config, + pkgs, + ... +}: let + port = 5126; +in { + sops.secrets."sync-secrets".mode = "0440"; + sops.secrets."sync-secrets".owner = config.users.users.firefox-syncserver.name; + services.firefox-syncserver = { + enable = true; + secrets = config.sops.secrets."sync-secrets".path; + singleNode = { + enable = true; + hostname = "sync.gladtherescake.eu"; + url = "http://localhost:${toString port}"; + enableNginx = true; + enableTLS = true; + }; + }; +} From 4e588c545b021b55ef5b0ea40e29bb2c672caee3 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 18:47:07 +0200 Subject: [PATCH 191/199] Need to add mariadb --- nixos/server/package-configs/firefox-sync/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index 3d8f71e..89614a3 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -7,6 +7,8 @@ in { sops.secrets."sync-secrets".mode = "0440"; sops.secrets."sync-secrets".owner = config.users.users.firefox-syncserver.name; + + services.mysql.package = pkgs.mariadb; services.firefox-syncserver = { enable = true; secrets = config.sops.secrets."sync-secrets".path; From 78b80a4bbcb9b7a7ef9ba0a41b162a78d5fb1882 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 18:54:53 +0200 Subject: [PATCH 192/199] That should be the user's name no --- nixos/server/package-configs/firefox-sync/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index 89614a3..060f02f 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -6,7 +6,7 @@ port = 5126; in { sops.secrets."sync-secrets".mode = "0440"; - sops.secrets."sync-secrets".owner = config.users.users.firefox-syncserver.name; + sops.secrets."sync-secrets".owner = config.users.users."firefox-syncserver".name; services.mysql.package = pkgs.mariadb; services.firefox-syncserver = { From 34dcbeb8626b5b6a9eedae231efc6945fa4f3d2a Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 18:57:13 +0200 Subject: [PATCH 193/199] Maybe it needs to set up the user first? --- nixos/server/package-configs/firefox-sync/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index 060f02f..b6bbb61 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -5,13 +5,13 @@ }: let port = 5126; in { - sops.secrets."sync-secrets".mode = "0440"; - sops.secrets."sync-secrets".owner = config.users.users."firefox-syncserver".name; + # sops.secrets."sync-secrets".mode = "0440"; + # sops.secrets."sync-secrets".owner = config.users.users."firefox-syncserver".name; services.mysql.package = pkgs.mariadb; services.firefox-syncserver = { enable = true; - secrets = config.sops.secrets."sync-secrets".path; + # secrets = config.sops.secrets."sync-secrets".path; singleNode = { enable = true; hostname = "sync.gladtherescake.eu"; From aa057a0bd7a385619616e13615bfcef538fc0fa9 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 18:58:36 +0200 Subject: [PATCH 194/199] Let's test it with a bad insecure secret FIXME --- nixos/server/package-configs/firefox-sync/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index b6bbb61..5906950 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -12,6 +12,10 @@ in { services.firefox-syncserver = { enable = true; # secrets = config.sops.secrets."sync-secrets".path; + # FIXME: change secret to sops correctly + secrets = builtins.toFile "sync-secrets" '' + SYNC_MASTER_SECRET=InsecureSecretToTest + ''; singleNode = { enable = true; hostname = "sync.gladtherescake.eu"; From 9756668b8c110a42303b84aeca726e96e854fe78 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 19:02:40 +0200 Subject: [PATCH 195/199] Let's try this user now, it should now exist --- nixos/server/package-configs/firefox-sync/default.nix | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index 5906950..060f02f 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -5,17 +5,13 @@ }: let port = 5126; in { - # sops.secrets."sync-secrets".mode = "0440"; - # sops.secrets."sync-secrets".owner = config.users.users."firefox-syncserver".name; + sops.secrets."sync-secrets".mode = "0440"; + sops.secrets."sync-secrets".owner = config.users.users."firefox-syncserver".name; services.mysql.package = pkgs.mariadb; services.firefox-syncserver = { enable = true; - # secrets = config.sops.secrets."sync-secrets".path; - # FIXME: change secret to sops correctly - secrets = builtins.toFile "sync-secrets" '' - SYNC_MASTER_SECRET=InsecureSecretToTest - ''; + secrets = config.sops.secrets."sync-secrets".path; singleNode = { enable = true; hostname = "sync.gladtherescake.eu"; From ab517e34e57d157b0aa164d0595df1f4f6ed5ea0 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 19:04:39 +0200 Subject: [PATCH 196/199] Let's try defining this first then --- nixos/server/package-configs/firefox-sync/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index 060f02f..2566296 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -6,7 +6,9 @@ port = 5126; in { sops.secrets."sync-secrets".mode = "0440"; - sops.secrets."sync-secrets".owner = config.users.users."firefox-syncserver".name; + sops.secrets."sync-secrets".owner = config.users.users.firefox-syncserver.name; + + users.users.firefox-syncserver.extraGroups = [config.users.groups.keys.name]; services.mysql.package = pkgs.mariadb; services.firefox-syncserver = { From 361ecd00529a0f10cfa9feb118a0621d528ec544 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 19:05:50 +0200 Subject: [PATCH 197/199] Let's make the user then --- nixos/server/package-configs/firefox-sync/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index 2566296..6b83ed9 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -8,7 +8,10 @@ in { sops.secrets."sync-secrets".mode = "0440"; sops.secrets."sync-secrets".owner = config.users.users.firefox-syncserver.name; - users.users.firefox-syncserver.extraGroups = [config.users.groups.keys.name]; + users.users.firefox-syncserver = { + isSystemUser = true; + extraGroups = [config.users.groups.keys.name]; + }; services.mysql.package = pkgs.mariadb; services.firefox-syncserver = { From c1dd0cd0707bef50760a4d78e23528e179e2f899 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 19:06:26 +0200 Subject: [PATCH 198/199] Add a group --- nixos/server/package-configs/firefox-sync/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index 6b83ed9..db2b6ed 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -10,6 +10,7 @@ in { users.users.firefox-syncserver = { isSystemUser = true; + group = "firefox-syncserver"; extraGroups = [config.users.groups.keys.name]; }; From 157247ecf1f7959decbeae515fa7e1228072d5e7 Mon Sep 17 00:00:00 2001 From: Lillian-Violet Date: Thu, 4 Apr 2024 19:07:07 +0200 Subject: [PATCH 199/199] And make the group too --- nixos/server/package-configs/firefox-sync/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/server/package-configs/firefox-sync/default.nix b/nixos/server/package-configs/firefox-sync/default.nix index db2b6ed..a97abf3 100644 --- a/nixos/server/package-configs/firefox-sync/default.nix +++ b/nixos/server/package-configs/firefox-sync/default.nix @@ -8,6 +8,7 @@ in { sops.secrets."sync-secrets".mode = "0440"; sops.secrets."sync-secrets".owner = config.users.users.firefox-syncserver.name; + users.groups.firefox-syncserver = {}; users.users.firefox-syncserver = { isSystemUser = true; group = "firefox-syncserver";