https://github.com/lee-b/pijul-bootstrap
Quickstart binary builds of pijul (better version control than git)
https://github.com/lee-b/pijul-bootstrap
alternative bootstrap build git install installer patches patchset pijul quickstart quilt theory-of-patches version-control
Last synced: about 2 months ago
JSON representation
Quickstart binary builds of pijul (better version control than git)
- Host: GitHub
- URL: https://github.com/lee-b/pijul-bootstrap
- Owner: lee-b
- Created: 2023-12-22T14:12:11.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-12-22T17:05:09.000Z (over 2 years ago)
- Last Synced: 2025-03-16T07:41:28.506Z (over 1 year ago)
- Topics: alternative, bootstrap, build, git, install, installer, patches, patchset, pijul, quickstart, quilt, theory-of-patches, version-control
- Language: Makefile
- Homepage:
- Size: 6.84 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.adoc
Awesome Lists containing this project
README
= Pijul Bootstrap
This is a quick way to get started with https://pijul.org[Pijul].
Pijul is a **much better** version control system than `git`, but is a bit painful to initially install, because it depends on either itself or rust+cargo+nix. I think that Pijul deserves to do better, and making it easier to get started with will probably help, so this is an easier way.
This repo provides `pijul` as:
- (primarily) a wrapper script that "just works", if you have docker installed and working.
- (optionally) a pre-compiled as a binary for amd64 linux, which only needs some commonly available distro libraries
== User-only install (for docker):
1. Download the `bin/pij` script, and install it to `$HOME/.local/bin`:
+
[source,shell]
----
install pij $HOME/.local/bin
----
2. Add this directory to your shell path. For bash, for example:
+
[source,shell]
----
echo >> ~/.bashrc 'export PATH="$HOME/.local/bin:$PATH"'
----
3. Log in again (or preferably just source the shell rc file again, if you know how).
4. Run `pijul` as normal, per the official documentation.
== System-wide install (for docker):
1. Download the `bin/pij` script, and install it **(as root)**, to `/usr/local/bin/pijul`:
+
[source,shell]
----
install pij /usr/local/bin/pijul
----
== Binary executable installation
1. Download the latest pijul-$VERSION-$ARCH release executable and install it **(as root)** to /usr/local/bin (set VERSION and ARCH to match what you downloaded, of course):
+
[source,shell]
----
VERSION=1.0.0-alpha
ARCH=x86_64
install pijul-$ARCH-$VERSION /usr/local/bin/pijul
----
2. Install the dependencies.
+
For debian-likes (Debian, Ubuntu, Devuan), this command is:
[source,shell]
----
RUN apt-get update && apt-get install -y libsodium23 libssl3
----
3. Run `pijul` as usual
== Docker image (from docker hub)
This may be useful if you want to build another container that pijul, such as a container-based pijul repo server. However, you are advised to study the Dockerfile and build your own as needed, rather than relying on this for production updates etc.
+
1. Run `docker pull leebraid/pijul-bootstrap:latest`.
2. Use the `pijul` command within the docker container as usual (consult the docker documentation if unsure at this point).
3. To use this in a Dockerfile, of course just do `FROM docker.io/leebraid/pijul-bootstrap:latest AS base`, or whatever.
== Contributing
- Please fork the code and submit a PR for any improvements. In particular, the following improvements are welcome:
+ Making the rust binary executable build fully static
+ Library installation instructions for distros other than debian-likes.
+ Automated CI/CD updates from the pijul repo, so I don't have to maintain this ;)
+ Docker image (cross-)building for other architectures (AMD64, RV64, etc.)
+ Confirmation/fixes for this working on other operating systems/distros (any BSD, for example)