From: Mathieu Baudier Date: Sat, 15 Feb 2025 08:45:08 +0000 (+0100) Subject: Improve README X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=18d8b6f4ddc829f8685e68b19966c49108aece7d;p=pkg%2Fggml Improve README --- diff --git a/README.md b/README.md index eb98996..d26ba35 100644 --- a/README.md +++ b/README.md @@ -35,48 +35,45 @@ or: cd sources/llama.cpp ../build-pbuilder bullseye amd64 debian/bullseye -## Development ## -When developing the packaging, cd to a layer directory and [use git-buildpackage as usual](https://honk.sigxcpu.org/projects/git-buildpackage/manual-html/). - -A shortcut is provided (which requires the dependent packages to be installed locally). For example: - - cd sources/whisper.cpp - ../build.dev - +## Maintenance ## ### Update upstream (Using `ggml` as an example, the same approach applies to the other layers) In a given layer git repository, make sure the upstream git repository is registered as remote: - cd sources/ggmll + cd sources/ggml git remote add github https://github.com/ggml-org/ggml.git -Fetch new commits from upstreams's `main` branch, and merge them to the `upstream/latest` branch. +Fetch new commits from upstreams's `master` branch, and merge them to the `upstream/latest` branch. - git fetch github main + git fetch --tags github master git checkout upstream/latest git merge --ff-only github/master Check out the commit you are interested in and count revisions in order to create a versioned tag: git checkout 9a4acb374565f4146b8d6eb1cffdcd7d437d1ba2 - # ggml or llama.cpp - git tag upstream/0.0.$(git rev-list --count HEAD) - # whisper.cpp - # git tag upstream/1.7.4+$(git rev-list --count v1.7.4..HEAD) + # git checkout b4719 # llama.cpp + git tag -m "Pinned upstream commit" upstream/0.0.$(git rev-list --count HEAD) # ggml or llama.cpp + # git tag -m "Pinned upstream commit" upstream/1.7.4+$(git rev-list --count v1.7.4..HEAD) # whisper.cpp ### New package release After updating upstream, checkout `debian/latest` and merge from upstream tag: git checkout debian/latest - git merge upstream/0.0.1722 + git merge --no-commit upstream/0.0.1722 Edit `debian/changelog` and perform packaging-specific changes. -Test the build locally: +Commit changes and test the build locally: ../build-pbuilder bookworm amd64 +Push to remote repositories: + + git push --tags origin "debian/*" "upstream/*" + # git push --tags mbaudier@github "debian/*" "upstream/*" + ### Using locally built packages Except for `ggml` itself, pbuilder/cowbuilder needs to be configured appropriately in order to use either a local repository with the `ggml` packages you just built, @@ -97,4 +94,14 @@ The `Packages` file needs to be generated after each build. For example: cd /srv/repo/deb/sid/ml/1.1 apt-ftparchive packages . > Packages -(Or [hooks](https://wiki.debian.org/PbuilderTricks#How_to_include_local_packages_in_the_build) can be used.) \ No newline at end of file +(Or [hooks](https://wiki.debian.org/PbuilderTricks#How_to_include_local_packages_in_the_build) can be used.) + +## Development ## +When developing the packaging, cd to a layer directory and [use git-buildpackage as usual](https://honk.sigxcpu.org/projects/git-buildpackage/manual-html/). + +A shortcut is provided in order to build the packages in-tree. +(It requires the dependent packages to be installed locally). +For example: + + cd sources/whisper.cpp + ../build.dev