chore: make zims separate packages
buildbot/nix-eval Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-exodus Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-icdm-root Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-jeremiah Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.nixos-genesis Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-zeke Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.nixos-linode Build done.
buildbot/nix-build gitea:greg/nixos#checks.aarch64-darwin.hm-gregs-MacBook-Pro-16-inch-Nov-2024 Build done.
buildbot/nix-build gitea:greg/nixos#checks.aarch64-darwin.hm-ivr Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikipedia-wikipedia_ht_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-phet-phet_fr_all.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-phet-phet_en_all.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikiversity-wikiversity_fr_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikibooks-wikibooks_fr_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wiktionary-wiktionary_fr_all_nopic.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikiversity-wikiversity_en_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikibooks-wikibooks_en_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wiktionary-wiktionary_en_all_nopic.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-gutenberg-gutenberg_fr_all.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikisource-wikisource_en_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikisource-wikisource_fr_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikipedia-wikipedia_fr_all_maxi.zim" Build done.
buildbot/nix-build Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikipedia-wikipedia_en_all_maxi.zim" Build done.
buildbot/nix-eval Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-exodus Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-icdm-root Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-jeremiah Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.nixos-genesis Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.hm-zeke Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux.nixos-linode Build done.
buildbot/nix-build gitea:greg/nixos#checks.aarch64-darwin.hm-gregs-MacBook-Pro-16-inch-Nov-2024 Build done.
buildbot/nix-build gitea:greg/nixos#checks.aarch64-darwin.hm-ivr Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikipedia-wikipedia_ht_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-phet-phet_fr_all.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-phet-phet_en_all.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikiversity-wikiversity_fr_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikibooks-wikibooks_fr_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wiktionary-wiktionary_fr_all_nopic.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikiversity-wikiversity_en_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikibooks-wikibooks_en_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wiktionary-wiktionary_en_all_nopic.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-gutenberg-gutenberg_fr_all.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikisource-wikisource_en_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikisource-wikisource_fr_all_maxi.zim" Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikipedia-wikipedia_fr_all_maxi.zim" Build done.
buildbot/nix-build Build done.
buildbot/nix-build gitea:greg/nixos#checks.x86_64-linux."pkg-zim-wikipedia-wikipedia_en_all_maxi.zim" Build done.
This commit is contained in:
+29
-28
@@ -1,36 +1,37 @@
|
||||
{
|
||||
pkgs,
|
||||
system ? pkgs.stdenv.hostPlatform.system,
|
||||
top,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
c = pkgs.callPackage;
|
||||
c = pkgs.newScope packages;
|
||||
packages = if system == "x86_64-linux" then (allSys // x86Linux) else allSys;
|
||||
allSys = {
|
||||
#default = iso;
|
||||
#iso = top.self.nixosConfigurations.iso.config.system.build.isoImage;
|
||||
#iso-beta = self.nixosConfigurations.iso-beta.config.system.build.isoImage;
|
||||
aacs = c ./aacs.nix { };
|
||||
adblock_update = c ./adblock_update.nix { };
|
||||
brew = c ./homebrew.nix { };
|
||||
create_ssl = c ./create_ssl.nix { };
|
||||
gcc-tune = c ./gcc-tune.nix { };
|
||||
#gen-build = c ./gen-build { };
|
||||
hms = c ./hms { };
|
||||
inject-darwin = c ./inject-darwin.nix { };
|
||||
inject = c ./inject.nix { };
|
||||
setup-ssh = c ./setup-ssh { };
|
||||
upgrade-pg-cluster = c ./upgrade-pg-cluster.nix { };
|
||||
};
|
||||
x86Linux = {
|
||||
qemu-hook = c ./qemu-hook.nix { };
|
||||
vfio_startup = c ./vfio_startup.nix { };
|
||||
vfio_shutdown = c ./vfio_shutdown.nix { };
|
||||
}
|
||||
// (import ./zim {
|
||||
inherit (top.nixpkgs-lib) lib;
|
||||
inherit pkgs;
|
||||
});
|
||||
in
|
||||
{
|
||||
#default = iso;
|
||||
#iso = top.self.nixosConfigurations.iso.config.system.build.isoImage;
|
||||
#iso-beta = self.nixosConfigurations.iso-beta.config.system.build.isoImage;
|
||||
aacs = c ./aacs.nix { };
|
||||
adblock_update = c ./adblock_update.nix { };
|
||||
brew = c ./homebrew.nix { };
|
||||
create_ssl = c ./create_ssl.nix { };
|
||||
gcc-tune = c ./gcc-tune.nix { };
|
||||
#gen-build = c ./gen-build { };
|
||||
hms = c ./hms { };
|
||||
inject-darwin = c ./inject-darwin.nix { };
|
||||
inject = c ./inject.nix { };
|
||||
setup-ssh = c ./setup-ssh { };
|
||||
upgrade-pg-cluster = c ./upgrade-pg-cluster.nix { };
|
||||
}
|
||||
// (
|
||||
if system == "x86_64-linux" then
|
||||
{
|
||||
qemu-hook = c ./qemu-hook.nix { };
|
||||
vfio_startup = c ./vfio_startup.nix { };
|
||||
vfio_shutdown = c ./vfio_shutdown.nix { };
|
||||
zim = c ./zim.nix { };
|
||||
}
|
||||
else
|
||||
{ }
|
||||
)
|
||||
packages
|
||||
|
||||
+33
-17
@@ -1,71 +1,87 @@
|
||||
{
|
||||
"en": {
|
||||
"gutenberg": {
|
||||
"name": "gutenberg_en_all_2023-08.zim",
|
||||
"name": "gutenberg_en_all",
|
||||
"version": "2023-08",
|
||||
"hash": "sha256-wWi0vTyMD/Es0w/jk9uyg4DN94080thPfT5uphEqbUc="
|
||||
},
|
||||
"phet": {
|
||||
"name": "phet_en_all_2025-03.zim",
|
||||
"name": "phet_en_all",
|
||||
"version": "2025-03",
|
||||
"hash": "sha256-HT/gVNydkOitny6oUl2A+JvbFDGAIeb0h+xbMeQ2Rqs="
|
||||
},
|
||||
"wikibooks": {
|
||||
"name": "wikibooks_en_all_maxi_2025-10.zim",
|
||||
"name": "wikibooks_en_all_maxi",
|
||||
"version": "2025-10",
|
||||
"hash": "sha256-zmcvrvGO+LEHt7x8/SoguBDODUyRXy9x5LUGAkS+fF8="
|
||||
},
|
||||
"wikipedia": {
|
||||
"name": "wikipedia_en_all_maxi_2025-08.zim",
|
||||
"name": "wikipedia_en_all_maxi",
|
||||
"version": "2025-08",
|
||||
"hash": "sha256-r7Cd0vjEb84Ftw+EwZSlqb8qhqm8WA3LAPdHAav7wrg="
|
||||
},
|
||||
"wikisource": {
|
||||
"name": "wikisource_en_all_maxi_2025-11.zim",
|
||||
"name": "wikisource_en_all_maxi",
|
||||
"version": "2025-11",
|
||||
"hash": "sha256-jPHh/C20PARN6K7aPNw3k9fFHhpwzsREi/1o1DIISS4="
|
||||
},
|
||||
"wikiversity": {
|
||||
"name": "wikiversity_en_all_maxi_2025-11.zim",
|
||||
"name": "wikiversity_en_all_maxi",
|
||||
"version": "2025-11",
|
||||
"hash": "sha256-0DaE2EUdHvaX3XqD3f0lwurSAaDZ4hEKtrMEutL5xt0="
|
||||
},
|
||||
"wiktionary": {
|
||||
"name": "wiktionary_en_all_nopic_2025-09.zim",
|
||||
"name": "wiktionary_en_all_nopic",
|
||||
"version": "2025-09",
|
||||
"hash": "sha256-EzrrruJQWY/3pP93WCTeCCfaPvpshqdkR0TFxVz7bEI="
|
||||
}
|
||||
},
|
||||
"fr": {
|
||||
"gutenberg": {
|
||||
"name": "gutenberg_fr_all_2025-10.zim",
|
||||
"name": "gutenberg_fr_all",
|
||||
"version": "2025-10",
|
||||
"hash": "sha256-1gU7v//LYX/2LyIRjO02A1fWPQz9Y7Qt5ftgeazd3G8="
|
||||
},
|
||||
"phet": {
|
||||
"name": "phet_fr_all_2025-03.zim",
|
||||
"name": "phet_fr_all",
|
||||
"version": "2025-03",
|
||||
"hash": "sha256-K56i55WPu5EMQHIrnnqhgJ32WozZ6oYD9X3IBytGA0A="
|
||||
},
|
||||
"wikibooks": {
|
||||
"name": "wikibooks_fr_all_maxi_2025-09.zim",
|
||||
"name": "wikibooks_fr_all_maxi",
|
||||
"version": "2025-09",
|
||||
"hash": "sha256-PQSdPbBHwK3IfFPH5GsKaxkNGTlZVJNJEI8gNioBl1U="
|
||||
},
|
||||
"wikipedia": {
|
||||
"name": "wikipedia_fr_all_maxi_2025-06.zim",
|
||||
"name": "wikipedia_fr_all_maxi",
|
||||
"version": "2025-06",
|
||||
"hash": "sha256-zzDhITMd1nRMYTUlvn56l4VBnpFuhiNrhhYMcrrBuOQ="
|
||||
},
|
||||
"wikisource": {
|
||||
"name": "wikisource_fr_all_maxi_2025-09.zim",
|
||||
"name": "wikisource_fr_all_maxi",
|
||||
"version": "2025-09",
|
||||
"hash": "sha256-2gEY5nTBecrmg61VJerxO4/oV7dZJmRgzLkqrcocW/0="
|
||||
},
|
||||
"wikiversity": {
|
||||
"name": "wikiversity_fr_all_maxi_2025-09.zim",
|
||||
"name": "wikiversity_fr_all_maxi",
|
||||
"version": "2025-09",
|
||||
"hash": "sha256-4vOxYiX3TYht7ARY+PeCJ0ArVZZn9TeGtwCieqn3xUw="
|
||||
},
|
||||
"wiktionary": {
|
||||
"name": "wiktionary_fr_all_nopic_2025-11.zim",
|
||||
"name": "wiktionary_fr_all_nopic",
|
||||
"version": "2025-11",
|
||||
"hash": "sha256-oQS8DzKioceCER1p1oAvaS1gRooMLJLYnCqy1aLARi4="
|
||||
}
|
||||
},
|
||||
"ht": {
|
||||
"phet": {
|
||||
"name": "phet_ht_all_2025-03.zim",
|
||||
"hash": "sha256-UjC0REJ5d5wIKccutZADX74IxvZuF+CD/caVzZfHg9s="
|
||||
"name": "phet_ht_all",
|
||||
"version": "2025-03",
|
||||
"hash": "sha256-bHrPzE8H7ptrP6r5wPlXSsXNlTiKxJ9KatABC4kwx+s="
|
||||
},
|
||||
"wikipedia": {
|
||||
"name": "wikipedia_ht_all_maxi_2025-09.zim",
|
||||
"name": "wikipedia_ht_all_maxi",
|
||||
"version": "2025-09",
|
||||
"hash": "sha256-spT7EFXLnI0FWT9Vlvp7QEP0urntmQ2C+fQB5bVLoLE="
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
zimMetadata = builtins.fromJSON (builtins.readFile ./blobs.json);
|
||||
oneZim =
|
||||
sourceType: info:
|
||||
pkgs.callPackage ./one_zim.nix {
|
||||
inherit sourceType;
|
||||
sourceName = info.name;
|
||||
sourceHash = info.hash;
|
||||
sourceVersion = info.version;
|
||||
};
|
||||
# Preserves structure in the blobs.json file, turning leaves into drvs
|
||||
zimFileDrvs = builtins.mapAttrs (
|
||||
_language: types: (builtins.mapAttrs (sourceType: info: oneZim sourceType info) types)
|
||||
) zimMetadata;
|
||||
# Flattens leaf drvs into the structure that flake packages expects
|
||||
zimFilePkgs = builtins.listToAttrs (
|
||||
lib.mapAttrsToListRecursiveCond (_path: x: !(x ? "name")) (_path: drv: {
|
||||
inherit (drv) name;
|
||||
value = drv;
|
||||
}) zimFileDrvs
|
||||
);
|
||||
in
|
||||
zimFilePkgs
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
sourceType,
|
||||
sourceName,
|
||||
sourceVersion,
|
||||
sourceHash,
|
||||
|
||||
fetchurl,
|
||||
stdenvNoCC,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
name = "zim-${sourceType}-${sourceName}.zim";
|
||||
version = sourceVersion;
|
||||
|
||||
src = (
|
||||
fetchurl {
|
||||
url = "https://download.kiwix.org/zim/${sourceType}/${sourceName}_${sourceVersion}.zim";
|
||||
hash = sourceHash;
|
||||
}
|
||||
# fetchtorrent {
|
||||
# inherit (val) hash;
|
||||
# url = "https://download.kiwix.org/zim/${type}/${val.name}.torrent";
|
||||
# backend = "transmission";
|
||||
# postUnpack = "mkdir -p $downloadedDirectory/tmp; mv $downloadedDirectory/*.zim $downloadedDirectory/tmp";
|
||||
# }
|
||||
);
|
||||
phases = [ "installPhase" ];
|
||||
installPhase = ''
|
||||
set -x
|
||||
ln -s ${finalAttrs.src} $out
|
||||
'';
|
||||
})
|
||||
Reference in New Issue
Block a user