From 3364a2d2dd04821c6fc2a02143a3f962c823bffc Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Wed, 5 Mar 2025 20:56:35 -0300 Subject: [PATCH 1/7] cosmic-files: refactor --- pkgs/by-name/co/cosmic-files/package.nix | 27 +++++++++++------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/pkgs/by-name/co/cosmic-files/package.nix b/pkgs/by-name/co/cosmic-files/package.nix index 350071d1f625..b9974db63274 100644 --- a/pkgs/by-name/co/cosmic-files/package.nix +++ b/pkgs/by-name/co/cosmic-files/package.nix @@ -13,34 +13,31 @@ xorg, }: -rustPlatform.buildRustPackage rec { +rustPlatform.buildRustPackage (finalAttrs: { pname = "cosmic-files"; version = "1.0.0-alpha.1"; src = fetchFromGitHub { owner = "pop-os"; repo = "cosmic-files"; - rev = "epoch-${version}"; + tag = "epoch-${finalAttrs.version}"; hash = "sha256-UwQwZRzOyMvLRRmU2noxGrqblezkR8J2PNMVoyG0M0w="; }; useFetchCargoVendor = true; cargoHash = "sha256-me/U4LtnvYtf77qxF2Z1ncHRVOLp3inDVlwnCjwlj08="; - # COSMIC applications now uses vergen for the About page - # Update the COMMIT_DATE to match when the commit was made - env.VERGEN_GIT_COMMIT_DATE = "2024-08-05"; - env.VERGEN_GIT_SHA = src.rev; - - postPatch = '' - substituteInPlace justfile --replace '#!/usr/bin/env' "#!$(command -v env)" - ''; + env = { + VERGEN_GIT_COMMIT_DATE = "2024-08-05"; + VERGEN_GIT_SHA = finalAttrs.src.tag; + }; nativeBuildInputs = [ just pkg-config makeBinaryWrapper ]; + buildInputs = [ glib libxkbcommon @@ -73,14 +70,14 @@ rustPlatform.buildRustPackage rec { } ''; - meta = with lib; { + meta = { homepage = "https://github.com/pop-os/cosmic-files"; description = "File Manager for the COSMIC Desktop Environment"; - license = licenses.gpl3Only; - maintainers = with maintainers; [ + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ ahoneybun nyabinary ]; - platforms = platforms.linux; + platforms = lib.platforms.linux; }; -} +}) From 0cb2021d318964f2203e63d2e18ec37759ad7acf Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Wed, 5 Mar 2025 20:59:22 -0300 Subject: [PATCH 2/7] cosmic-files: use libcosmicAppHook --- pkgs/by-name/co/cosmic-files/package.nix | 32 +++--------------------- 1 file changed, 4 insertions(+), 28 deletions(-) diff --git a/pkgs/by-name/co/cosmic-files/package.nix b/pkgs/by-name/co/cosmic-files/package.nix index b9974db63274..35c866575a61 100644 --- a/pkgs/by-name/co/cosmic-files/package.nix +++ b/pkgs/by-name/co/cosmic-files/package.nix @@ -3,14 +3,9 @@ stdenv, fetchFromGitHub, rustPlatform, - makeBinaryWrapper, - cosmic-icons, just, - pkg-config, + libcosmicAppHook, glib, - libxkbcommon, - wayland, - xorg, }: rustPlatform.buildRustPackage (finalAttrs: { @@ -34,17 +29,13 @@ rustPlatform.buildRustPackage (finalAttrs: { nativeBuildInputs = [ just - pkg-config - makeBinaryWrapper + libcosmicAppHook ]; - buildInputs = [ - glib - libxkbcommon - wayland - ]; + buildInputs = [ glib ]; dontUseJustBuild = true; + dontUseJustCheck = true; justFlags = [ "--set" @@ -55,21 +46,6 @@ rustPlatform.buildRustPackage (finalAttrs: { "target/${stdenv.hostPlatform.rust.cargoShortTarget}/release/cosmic-files" ]; - # LD_LIBRARY_PATH can be removed once tiny-xlib is bumped above 0.2.2 - postInstall = '' - wrapProgram "$out/bin/cosmic-files" \ - --suffix XDG_DATA_DIRS : "${cosmic-icons}/share" \ - --prefix LD_LIBRARY_PATH : ${ - lib.makeLibraryPath [ - xorg.libX11 - xorg.libXcursor - xorg.libXrandr - xorg.libXi - wayland - ] - } - ''; - meta = { homepage = "https://github.com/pop-os/cosmic-files"; description = "File Manager for the COSMIC Desktop Environment"; From 142bf12d1eaffcaa98aded54326d602ab564b30c Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Wed, 5 Mar 2025 21:00:38 -0300 Subject: [PATCH 3/7] cosmic-files: add updateScript --- pkgs/by-name/co/cosmic-files/package.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/by-name/co/cosmic-files/package.nix b/pkgs/by-name/co/cosmic-files/package.nix index 35c866575a61..70a4bb35535f 100644 --- a/pkgs/by-name/co/cosmic-files/package.nix +++ b/pkgs/by-name/co/cosmic-files/package.nix @@ -6,6 +6,7 @@ just, libcosmicAppHook, glib, + nix-update-script, }: rustPlatform.buildRustPackage (finalAttrs: { @@ -46,6 +47,15 @@ rustPlatform.buildRustPackage (finalAttrs: { "target/${stdenv.hostPlatform.rust.cargoShortTarget}/release/cosmic-files" ]; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version" + "unstable" + "--version-regex" + "epoch-(.*)" + ]; + }; + meta = { homepage = "https://github.com/pop-os/cosmic-files"; description = "File Manager for the COSMIC Desktop Environment"; From 6feab6229d3bd6c076c0fb856d8eabf86f081c2b Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Wed, 5 Mar 2025 21:03:03 -0300 Subject: [PATCH 4/7] cosmic-files: 1.0.0-alpha.1 -> 1.0.0-alpha.6 --- pkgs/by-name/co/cosmic-files/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/co/cosmic-files/package.nix b/pkgs/by-name/co/cosmic-files/package.nix index 70a4bb35535f..bc818f6625c6 100644 --- a/pkgs/by-name/co/cosmic-files/package.nix +++ b/pkgs/by-name/co/cosmic-files/package.nix @@ -11,20 +11,20 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "cosmic-files"; - version = "1.0.0-alpha.1"; + version = "1.0.0-alpha.6"; src = fetchFromGitHub { owner = "pop-os"; repo = "cosmic-files"; tag = "epoch-${finalAttrs.version}"; - hash = "sha256-UwQwZRzOyMvLRRmU2noxGrqblezkR8J2PNMVoyG0M0w="; + hash = "sha256-i1CVhfieexeiKPwp0y29QyrKspzEFkp1+zwIaM9D/Qc="; }; useFetchCargoVendor = true; - cargoHash = "sha256-me/U4LtnvYtf77qxF2Z1ncHRVOLp3inDVlwnCjwlj08="; + cargoHash = "sha256-I5WRuEogMwa0dB6wxhWDxivqhCdUugvsPrwUvjjDnt8="; env = { - VERGEN_GIT_COMMIT_DATE = "2024-08-05"; + VERGEN_GIT_COMMIT_DATE = "2025-02-21"; VERGEN_GIT_SHA = finalAttrs.src.tag; }; From 99843527292343ecea127d40a82380c740f8fa88 Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Wed, 5 Mar 2025 21:25:43 -0300 Subject: [PATCH 5/7] cosmic-files: build applet --- pkgs/by-name/co/cosmic-files/package.nix | 33 ++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/pkgs/by-name/co/cosmic-files/package.nix b/pkgs/by-name/co/cosmic-files/package.nix index bc818f6625c6..3d6004114b8a 100644 --- a/pkgs/by-name/co/cosmic-files/package.nix +++ b/pkgs/by-name/co/cosmic-files/package.nix @@ -45,8 +45,41 @@ rustPlatform.buildRustPackage (finalAttrs: { "--set" "bin-src" "target/${stdenv.hostPlatform.rust.cargoShortTarget}/release/cosmic-files" + "--set" + "applet-src" + "target/${stdenv.hostPlatform.rust.cargoShortTarget}/release/cosmic-files-applet" ]; + # This is needed since by setting cargoBuildFlags, it would build both the applet and the main binary + # at the same time, which would cause problems with the desktop items applet + buildPhase = '' + runHook preBuild + + defaultCargoBuildFlags="$cargoBuildFlags" + + cargoBuildFlags="$defaultCargoBuildFlags --package cosmic-files" + runHook cargoBuildHook + + cargoBuildFlags="$defaultCargoBuildFlags --package cosmic-files-applet" + runHook cargoBuildHook + + runHook postBuild + ''; + + checkPhase = '' + runHook preCheck + + defaultCargoTestFlags="$cargoTestFlags" + + cargoTestFlags="$defaultCargoTestFlags --package cosmic-files" + runHook cargoCheckHook + + cargoTestFlags="$defaultCargoTestFlags --package cosmic-files-applet" + runHook cargoCheckHook + + runHook postCheck + ''; + passthru.updateScript = nix-update-script { extraArgs = [ "--version" From cac1764a383bf47c26bb0844288d7b831d40addb Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Wed, 5 Mar 2025 21:26:13 -0300 Subject: [PATCH 6/7] cosmic-files: add HeitorAugustoLN as a maintainer --- pkgs/by-name/co/cosmic-files/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/co/cosmic-files/package.nix b/pkgs/by-name/co/cosmic-files/package.nix index 3d6004114b8a..618b6767745b 100644 --- a/pkgs/by-name/co/cosmic-files/package.nix +++ b/pkgs/by-name/co/cosmic-files/package.nix @@ -96,6 +96,7 @@ rustPlatform.buildRustPackage (finalAttrs: { maintainers = with lib.maintainers; [ ahoneybun nyabinary + HeitorAugustoLN ]; platforms = lib.platforms.linux; }; From a2dd5f5b2a799d53f2078be6aa527efd6cfef2ba Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Wed, 5 Mar 2025 21:26:34 -0300 Subject: [PATCH 7/7] cosmic-files: add `meta.mainProgram` --- pkgs/by-name/co/cosmic-files/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/co/cosmic-files/package.nix b/pkgs/by-name/co/cosmic-files/package.nix index 618b6767745b..7951c9f82d9d 100644 --- a/pkgs/by-name/co/cosmic-files/package.nix +++ b/pkgs/by-name/co/cosmic-files/package.nix @@ -93,6 +93,7 @@ rustPlatform.buildRustPackage (finalAttrs: { homepage = "https://github.com/pop-os/cosmic-files"; description = "File Manager for the COSMIC Desktop Environment"; license = lib.licenses.gpl3Only; + mainProgram = "cosmic-files"; maintainers = with lib.maintainers; [ ahoneybun nyabinary