lol

Merge pull request #264084 from kirillrdy/freetube

freetube: fix build, use latest electron

authored by

OTABI Tomoya and committed by
GitHub
4db92195 0e382341

+47 -4
+1
nixos/tests/all-tests.nix
··· 306 306 forgejo = handleTest ./forgejo.nix { }; 307 307 freenet = handleTest ./freenet.nix {}; 308 308 freeswitch = handleTest ./freeswitch.nix {}; 309 + freetube = discoverTests (import ./freetube.nix); 309 310 freshrss-sqlite = handleTest ./freshrss-sqlite.nix {}; 310 311 freshrss-pgsql = handleTest ./freshrss-pgsql.nix {}; 311 312 frigate = handleTest ./frigate.nix {};
+41
nixos/tests/freetube.nix
··· 1 + let 2 + tests = { 3 + wayland = { pkgs, ... }: { 4 + imports = [ ./common/wayland-cage.nix ]; 5 + services.cage.program = "${pkgs.freetube}/bin/freetube"; 6 + virtualisation.memorySize = 2047; 7 + environment.variables.NIXOS_OZONE_WL = "1"; 8 + environment.variables.DISPLAY = "do not use"; 9 + }; 10 + xorg = { pkgs, ... }: { 11 + imports = [ ./common/user-account.nix ./common/x11.nix ]; 12 + virtualisation.memorySize = 2047; 13 + services.xserver.enable = true; 14 + services.xserver.displayManager.sessionCommands = '' 15 + ${pkgs.freetube}/bin/freetube 16 + ''; 17 + test-support.displayManager.auto.user = "alice"; 18 + }; 19 + }; 20 + 21 + mkTest = name: machine: 22 + import ./make-test-python.nix ({ pkgs, ... }: { 23 + inherit name; 24 + nodes = { "${name}" = machine; }; 25 + meta.maintainers = with pkgs.lib.maintainers; [ kirillrdy ]; 26 + enableOCR = true; 27 + 28 + testScript = '' 29 + start_all() 30 + machine.wait_for_unit('graphical.target') 31 + machine.wait_for_text('Your Subscription list is currently empty') 32 + machine.send_key("ctrl-r") 33 + machine.wait_for_text('Your Subscription list is currently empty') 34 + machine.screenshot("main.png") 35 + machine.send_key("ctrl-comma") 36 + machine.wait_for_text('General Settings', timeout=30) 37 + machine.screenshot("preferences.png") 38 + ''; 39 + }); 40 + in 41 + builtins.mapAttrs (k: v: mkTest k v { }) tests
+5 -4
pkgs/applications/video/freetube/default.nix
··· 1 - { stdenv, lib, fetchurl, appimageTools, makeWrapper, electron_22 }: 1 + { stdenv, lib, fetchurl, appimageTools, makeWrapper, electron, nixosTests }: 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "freetube"; ··· 8 8 url = "https://github.com/FreeTubeApp/FreeTube/releases/download/v${version}-beta/freetube_${version}_amd64.AppImage"; 9 9 sha256 = "add96ad3509d4d5c6d8658b005dfd046963cd6bb0a4e1f3e88f726a86c05810f"; 10 10 }; 11 + 12 + passthru.tests = nixosTests.freetube; 11 13 12 14 appimageContents = appimageTools.extractType2 { 13 15 name = "${pname}-${version}"; ··· 35 37 runHook postInstall 36 38 ''; 37 39 38 - # Electron version is set to 22 in order to match upstream 39 40 postFixup = '' 40 - makeWrapper ${electron_22}/bin/electron $out/bin/${pname} \ 41 + makeWrapper ${electron}/bin/electron $out/bin/${pname} \ 41 42 --add-flags $out/share/${pname}/resources/app.asar 42 43 ''; 43 44 ··· 46 47 homepage = "https://freetubeapp.io/"; 47 48 license = licenses.agpl3Only; 48 49 maintainers = with maintainers; [ ryneeverett alyaeanyx ]; 49 - inherit (electron_22.meta) platforms; 50 + inherit (electron.meta) platforms; 50 51 }; 51 52 }