{ lib, stdenv, rustPlatform, fetchFromGitHub, libcosmicAppHook, pkg-config, libinput, libgbm, udev, nix-update-script, nixosTests, }: rustPlatform.buildRustPackage (finalAttrs: { pname = "cosmic-workspaces-epoch"; version = "1.1.0"; # nixpkgs-update: no auto update src = fetchFromGitHub { owner = "pop-os"; repo = "cosmic-workspaces-epoch"; tag = "epoch-${finalAttrs.version}"; hash = "sha256-riiveHFtRF3rtOhbbUtfYRoAlqc7TCRr8aer0dgBY7g="; }; cargoHash = "sha256-Z5dC3W8QoDBZWBjHwRj9MC8EScDjQwUiUcOPTRDToDA="; separateDebugInfo = true; __structuredAttrs = true; nativeBuildInputs = [ pkg-config libcosmicAppHook ]; buildInputs = [ libinput libgbm udev ]; makeFlags = [ "prefix=${placeholder "out"}" "CARGO_TARGET_DIR=target/${stdenv.hostPlatform.rust.cargoShortTarget}" ]; dontCargoInstall = true; passthru = { tests = { inherit (nixosTests) cosmic cosmic-autologin cosmic-noxwayland cosmic-autologin-noxwayland ; }; updateScript = nix-update-script { extraArgs = [ "--version-regex" "epoch-(.*)" ]; }; }; meta = { homepage = "https://github.com/pop-os/cosmic-workspaces-epoch"; description = "Workspaces Epoch for the COSMIC Desktop Environment"; mainProgram = "cosmic-workspaces"; license = lib.licenses.gpl3Only; teams = [ lib.teams.cosmic ]; platforms = lib.platforms.linux; }; })