Homepage: http://demizerone.com/archzfs
These are the sources and packages for the ZFS filesystem support for Arch Linux.
This repository contains the pacman package sources, pre-built packages, pacman package repository, and documentation.
The license of the Arch Linux package sources is MIT.
The license of ZFS is CDDL.
The license of SPL is LGPL.
build.sh
uses clean-chroot-manager to build packages in a systemd
namespace container.
Note
All of these commands require the current directory to be the archzfs project directory.
Set the appropriate variables in conf.sh
Repository base path
The parent directory of the
demz-repo-core
anddemz-repo-archiso
repos.GPG signing key
Used to sign the packages and repo database.
Your email address
Used for reporting changes changes in
scraper.sh
. Mutt and msmtp are used for sending email. Required only ifscraper.sh
orverifier.sh
are going to be used.Ssh remote login
Used in
verifier.sh
for making sure the localdemz-repo-*
are in sync with the remote repos.
Set the appropriate kernel versions in conf.sh.
If the any of the
*_X*_PKGREL
variables are changed inconf.sh`,` then ``AZB_PKGREL
must be incremented as well.AZB_PKGREL
controls the top levelpkgrel
inside the PKGBUILDS.Update the PKGBUILDs
Use
./build update
to update the PKGBUILDS using theconf.sh
variables../build.sh update-test
uses theAZB_LINUX_TEST_*
variables. Using the test values are useful for test building the zfs packages against the Linux kernel version in the official testing repo. Mostly used on minor Linux kernel updates (3.12 -> 3.13).Build the packages
Use
./build.sh make -u
to build the packages, update the clean chroot in the process.It is possible to use
./build.sh update make -u
in one shot.If you want to see command output only, use
./build.sh make -n
. Add the-d
to see debugging output.Add packages to the repo
Use
./repo.sh core -n
to what changes will occur without actually making them../repo.sh core
will add the package versions defined byAZB_LINUX_VERSION
to thedemz-repo-core
repository.Push the package sources to AUR.
Pushing to AUR using
push.sh
requires burp. Simply use./push.sh
to push the package sources by version (specified byAZB_LINUX_VERSION
) to AUR.Creating a GIT patch
- Clone the ZFS and SPL sources
- Set the paths to the sources in conf.sh
- cd to ZFS git repo and create a new branch "patch_br"
- Use: git rebase -i <hash> to squash all of the commits until the last release (tagged 0.6.2 currently). Use fixup to discard the commit log messages.
- git format-patch -1
- Edit the patch and remove uneeded messages or changes
- git co master
- mv 0001* $(git describe --long).patch
- rename the patch adding a "r": zfs-0.6.2-r*
- tar --xz -cvvf zfs.patch.tar.xz zfs.patch
- Copy the patches to the PKGBUILD directories