mirror of
https://codeberg.org/privacy1st/arch
synced 2024-12-23 01:16:04 +01:00
2.3 KiB
2.3 KiB
My personalized Arch Linux distribution
Cloning this repository
git clone --recurse-submodules https://codeberg.org/privacy1st/arch && cd arch
Or equivalently:
git clone https://codeberg.org/privacy1st/arch
cd arch
git submodule update --init --recursive
Build packages from source
Fork this repository.
Then and adjust the following files:
- pkg/de-p1st-repo/arch-repo.cfg
- For your build-machine, adjust section
LOCAL MACHINE CONFIGURATION
: Add absolute path of folder build-pkg/out to arrayLOCAL_PKG_DIRS
as the build packages will be stored there. - For your mirror-server, adjust section
REMOTE MIRROR SERVER CONFIGURATION
accordingly.
- For your build-machine, adjust section
- pkg/de-p1st-pacman/pacman.d/de-p1st
- Add the address of your mirror-server.
Build de-p1st-repo:
sudo docker-compose -f build-pkg/docker-compose.yml run --rm makepkg de-p1st-repo
Install it on your build-machine and your mirror-server:
# On your local machine
sudo pacman -U out/de-p1st-repo*.pkg.tar.*
# Copy the package to your mirror-server and install it there as well!
Then you can start building all packages and adding them to your mirror-server:
./build-pkg/build-all
Adding/removing AUR packages
There are several AUR packages added as submodules inside pkg. See build-pkg/pkglist-AUR.txt for a full list.
They were added in the following manner:
PKG=xml2
git submodule add "https://aur.archlinux.org/${PKG}.git" pkg/"${PKG}"
# echo "Add ${PKG} to 'build-pkg/pkglist-AUR.txt'. Each line represents one build stage."
And can be removed with:
PKG=xml2
git rm -f pkg/"${PKG}"
# echo "Above command should remove ${PKG} from '.gitmodules'."
Update submodules of AUR packages
To update all submodules and add those who received an update to build-pkg/pkglist.tmp, run
./git-pull
Build outdated AUR packages
The following command includes ./git-pull
.
./build-pkg/pull-and-build-outdated
Install Arch Linux
See pkg/de-p1st-installer/README.md
Notes and TODOs
See notes.md