From 580b8ad7bfa2e99b6ebc6bbee8562320f11f2399 Mon Sep 17 00:00:00 2001 From: MrSnowy Date: Thu, 8 Jan 2026 21:09:48 +0100 Subject: [PATCH 1/2] tetrd: 1.0.4 -> 1.3.1-1 Updated tetrd to the newest version. Added new dependency. Added binary to $out/bin. --- pkgs/by-name/te/tetrd/package.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/te/tetrd/package.nix b/pkgs/by-name/te/tetrd/package.nix index e7694d7ec5f4..8560580dd150 100644 --- a/pkgs/by-name/te/tetrd/package.nix +++ b/pkgs/by-name/te/tetrd/package.nix @@ -19,15 +19,16 @@ libappindicator, udev, libgbm, + libGL, }: stdenv.mkDerivation rec { pname = "tetrd"; - version = "1.0.4"; + version = "1.3.1-1"; src = fetchurl { - url = "https://web.archive.org/web/20211130190525/https://download.tetrd.app/files/tetrd.linux_amd64.pkg.tar.xz"; - sha256 = "1bxp7rg2dm9nnvkgg48xd156d0jgdf35flaw0bwzkkh3zz9ysry2"; + url = "https://web.archive.org/web/20260108185127/https://download.tetrd.app/files/tetrd.linux_amd64.pkg.tar.xz"; + sha256 = "0mpixs20jrxkbxvd7nl0p664jgqfp3m6qf7kmsj7frkhky697fbm"; }; sourceRoot = "."; @@ -40,6 +41,7 @@ stdenv.mkDerivation rec { ]; buildInputs = [ + libGL c-ares ffmpeg libevent @@ -69,6 +71,9 @@ stdenv.mkDerivation rec { wrapProgram $out/opt/Tetrd/tetrd \ --prefix LD_LIBRARY_PATH ":" ${lib.makeLibraryPath buildInputs} + mkdir $out/bin + ln -s $out/opt/Tetrd/tetrd $out/bin/tetrd + runHook postInstall ''; @@ -82,5 +87,6 @@ stdenv.mkDerivation rec { sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; license = lib.licenses.unfree; platforms = [ "x86_64-linux" ]; + mainProgram = "tetrd"; }; } From 63866146ae7f1a665c0b162e2e336b05cee15d67 Mon Sep 17 00:00:00 2001 From: MrSnowy Date: Thu, 8 Jan 2026 21:17:23 +0100 Subject: [PATCH 2/2] nixos/tetrd: add package option | fix resolve.conf Added the package option to the services.tetrd. Disabled overwriting of resolve.conf since otherwise tetrd disables your dns when its not connected to a device. --- nixos/modules/services/networking/tetrd.nix | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/nixos/modules/services/networking/tetrd.nix b/nixos/modules/services/networking/tetrd.nix index 939c1227886f..7d5fc5960336 100644 --- a/nixos/modules/services/networking/tetrd.nix +++ b/nixos/modules/services/networking/tetrd.nix @@ -5,24 +5,30 @@ ... }: +let + cfg = config.services.tetrd; +in { - options.services.tetrd.enable = lib.mkEnableOption "tetrd"; + options.services.tetrd = { + enable = lib.mkEnableOption "tetrd"; + package = lib.mkPackageOption pkgs "tetrd" { }; + }; - config = lib.mkIf config.services.tetrd.enable { + config = lib.mkIf cfg.enable { environment = { - systemPackages = [ pkgs.tetrd ]; - etc."resolv.conf".source = "/etc/tetrd/resolv.conf"; + systemPackages = [ cfg.package ]; + # etc."resolv.conf".source = "/etc/tetrd/resolv.conf"; # Disabled overwriting of resolve.conf since otherwise tetrd disables your dns when its not connected to a device. }; systemd = { tmpfiles.rules = [ "f /etc/tetrd/resolv.conf - - -" ]; services.tetrd = { - description = pkgs.tetrd.meta.description; + description = cfg.package.meta.description; wantedBy = [ "multi-user.target" ]; serviceConfig = { - ExecStart = "${pkgs.tetrd}/opt/Tetrd/bin/tetrd"; + ExecStart = "${cfg.package}/opt/Tetrd/bin/tetrd"; Restart = "always"; RuntimeDirectory = "tetrd"; RootDirectory = "/run/tetrd";