astal: move source to a separate package

It provides general description for all astal packages and r-ryantm
will create properly named PRs.
This commit is contained in:
PerchunPak 2025-01-27 09:09:31 +01:00 committed by Masum Reza
parent b5d863ceb3
commit 00f81357aa
4 changed files with 41 additions and 23 deletions

View file

@ -1,7 +1,7 @@
{
lib,
stdenv,
fetchFromGitHub,
source, # this is ./source.nix
glib,
wrapGAppsHook3,
@ -39,17 +39,12 @@ let
cleanArgs args
// {
pname = "astal-${name}";
version = "0-unstable-2025-03-21";
inherit (source) version;
__structuredAttrs = true;
strictDeps = true;
src = fetchFromGitHub {
owner = "Aylur";
repo = "astal";
rev = "dc0e5d37abe9424c53dcbd2506a4886ffee6296e";
hash = "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=";
};
src = source;
sourceRoot = "${finalAttrs.src.name}/${sourceRoot}";

View file

@ -1,5 +1,6 @@
{ wireplumber }:
self: {
source = self.callPackage ./source.nix { };
buildAstalModule = self.callPackage ./buildAstalModule.nix { };
apps = self.callPackage ./modules/apps.nix { };

View file

@ -1,17 +1,6 @@
{ buildAstalModule, nix-update-script }:
(buildAstalModule {
{ buildAstalModule }:
buildAstalModule {
name = "io";
sourceRoot = "lib/astal/io";
meta = {
description = "Astal core library";
longDescription = ''
Astal is a collection of building blocks for creating custom desktop shells
'';
mainProgram = "astal";
};
}).overrideAttrs
{
# add an update script only in one place,
# so r-ryantm won't run it multiple times
passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
}
meta.description = "Astal core library";
}

View file

@ -0,0 +1,33 @@
{
lib,
nix-update-script,
fetchFromGitHub,
}:
(fetchFromGitHub {
owner = "Aylur";
repo = "astal";
rev = "dc0e5d37abe9424c53dcbd2506a4886ffee6296e";
hash = "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=";
}).overrideAttrs
(
final: prev: {
name = "${final.pname}-${final.version}"; # fetchFromGitHub already defines name
pname = "astal-source";
version = "0-unstable-2025-03-21";
meta = prev.meta // {
description = "Building blocks for creating custom desktop shells (source)";
longDescription = ''
Please don't use this package directly, use one of subpackages in
`astal` namespace. This package is just a `fetchFromGitHub`, which is
reused between all subpackages.
'';
maintainers = with lib.maintainers; [ perchun ];
platforms = lib.platforms.linux;
};
passthru = prev.passthru // {
updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
};
}
)