Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 18 additions & 12 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -57,18 +57,10 @@
# for backward compatibility, is safe to delete, not referenced anywhere
overlay = self.overlays.default;

hydraJobs =
hydraEmacsen =
lib.genAttrs [ "x86_64-linux" "aarch64-linux" ] (system:
let
mkHydraJobs = pkgs:
let
inherit (pkgs) lib;

filterNonDrvAttrs = s: lib.mapAttrs (_: v: if (lib.isDerivation v) then v else filterNonDrvAttrs v) (lib.filterAttrs (_: v: lib.isDerivation v || (builtins.typeOf v == "set" && ! builtins.hasAttr "__functor" v)) s);

mkEmacsSet = emacs: filterNonDrvAttrs (pkgs.recurseIntoAttrs (pkgs.emacsPackagesFor emacs));

in
{
emacsen = {
inherit (pkgs) emacs-unstable emacs-unstable-nox;
Expand All @@ -79,9 +71,6 @@
inherit (pkgs) emacs-lsp;
inherit (pkgs) commercial-emacs;
};

packages = mkEmacsSet pkgs.emacs;
packages-unstable = mkEmacsSet pkgs.emacs-unstable;
};

in
Expand All @@ -90,6 +79,23 @@
"unstable" = mkHydraJobs (importPkgs nixpkgs { inherit system; });
});

hydraPackageSet =
lib.genAttrs [ "x86_64-linux" ] (system:
let
mkHydraJobs = pkgs:
let
inherit (pkgs) lib;
filterNonDrvAttrs = s: lib.mapAttrs (_: v: if (lib.isDerivation v) then v else filterNonDrvAttrs v) (lib.filterAttrs (_: v: lib.isDerivation v || (builtins.typeOf v == "set" && ! builtins.hasAttr "__functor" v)) s);
mkEmacsSet = emacs: filterNonDrvAttrs (pkgs.recurseIntoAttrs (pkgs.emacsPackagesFor emacs));
in
{
packages = mkEmacsSet pkgs.emacs;
};
in
{
"unstable" = mkHydraJobs (importPkgs nixpkgs { inherit system; });
});

packages = forAllSystems (system: packages'.${system}.packages);
lib = forAllSystems (system: packages'.${system}.lib);
};
Expand Down