koreader-from-src: 2023-10-18 -> 2023.10 (i.e. end-of-month commit)

This commit is contained in:
Colin 2023-11-19 23:04:39 +00:00
parent 6d6d2320bd
commit 6b9c5f518e
2 changed files with 14 additions and 7 deletions

View File

@ -25,14 +25,14 @@
}:
let
sources = import ./sources.nix;
version = "2023.10";
src = fetchFromGitHub {
owner = "koreader";
repo = "koreader";
name = "koreader"; # needed because `srcs = ` in the outer derivation is a list
fetchSubmodules = true;
# rev = "v${version}";
rev = "f3520effd679eb24a352e7dec600c5b378c3d376"; # master
hash = "sha256-cPftNXKL9khQKH/DKXyl9YZAEa27T/n3ATErPZy8irY=";
rev = "v${version}";
hash = "sha256-J8WNSkhPO0Y+m/h246w1GpowOVROOHVbmuDHFAniItk=";
};
# XXX: for some inscrutable reason, `enable52Compat` is *partially* broken, only when cross compiling.
# `table.unpack` is non-nil, but `table.pack` is nil.
@ -73,7 +73,7 @@ let
in
stdenv.mkDerivation rec {
pname = "koreader-from-src";
version = "unstable-2023-10-18";
inherit version;
srcs = [ src ] ++ (lib.mapAttrsToList
(name: src: fetchgit (
{

View File

@ -1,8 +1,10 @@
# to update:
# - first, figure the rev for `koreader-base`:
# - inside `koreader` repo:
# - `git submodule status base`
# - or `git log base`
# - inside `koreader-base` repo:
# - note the git rev as `old-rev`
# - `git pull` in koreader-base
# - `git diff old-rev.. thirdparty`
# - `git diff old-rev..new-rev thirdparty`
# - update `source.rev` everywhere here that changed upstream
# - zero the hashes here and correct them based on build errors
# - tweak ./vendor-external-projects.patch until it applies
@ -13,6 +15,11 @@
# the following build output may look like an error, but is safe to ignore:
# - "awk: fatal: cannot open file `3.9' for reading: No such file or directory"
# - this number comes from the luarocks version
#
# how to automate koreader updates?
# - it may be that koreader-base is more strongly decoupled from `koreader` than first appears:
# - most `koreader` commits which update base simply bump its rev and nothing more.
# - then, `koreader-base` could be its own package, updated independently from the main koreader.
{
thirdparty = {
curl = {