aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorromkatv <roman.perepelitsa@gmail.com>2020-05-26 12:14:53 +0300
committerromkatv <roman.perepelitsa@gmail.com>2020-05-26 12:14:53 +0300
commit6696212ddecbb5ffae8d71467518cc5651c90b3f (patch)
treeb5df01923337c3bd473f447bd865d553420c6cec /README.md
parent9a4bbcd930afa54bc605e3020fb38353161e5a84 (diff)
Squashed 'gitstatus/' changes from cc956ca78..331e9ff65
331e9ff65 docs: remove packaging instructions and instead discourage it c1fff558c install: add a link to #compiling docs if no gitstatusd is found 8632b85ab build: use extra optimization and hardening flags c0a71c757 mbuild: don't stop on first failure 52e0359ec build: don't link statically when doing a local linux build git-subtree-dir: gitstatus git-subtree-split: 331e9ff65df96e7423c0b7a01e5e98d6c6b7d428
Diffstat (limited to 'README.md')
-rw-r--r--README.md84
1 files changed, 9 insertions, 75 deletions
diff --git a/README.md b/README.md
index 24ebf75d..291f89bf 100644
--- a/README.md
+++ b/README.md
@@ -511,83 +511,17 @@ by shell bindings automatically.
When you update shell bindings, they may refuse to work with the binary you've built earlier. In
this case you'll need to rebuild.
-### Compiling for distribution
-
-If you want to package gitstatus, it's best to do it based off [releases](
- https://github.com/romkatv/gitstatus/releases).
-
-The following code should work without patching anything in gitstatus sources. If it doesn't, please
-open an issue.
-
-**IMPORTANT:** *Change version to what you want to package. This example doesn't get updated when
-new versions are released.*
-
-```zsh
-# Download and extract gitstatus tarball.
-gitstatus_version=1.1.0 # IMPORTANT: CHANGE VERSION TO WHAT YOU WANT
-wget https://github.com/romkatv/gitstatus/archive/v"$gitstatus_version".tar.gz
-tar -xzf v"$gitstatus_version".tar.gz
-cd gitstatus-"$gitstatus_version"
-
-# Download libgit2 tarball and compile gitstatusd.
-./build -w
-
-# Post-process.
-rm ./deps/libgit2-*.tar.gz
-for file in *.zsh install; do
- zsh -fc "emulate zsh -o no_aliases && zcompile -R -- $file.zwc $file"
-done
-```
+If you are using gitstatus through [Powerlevel10k](https://github.com/romkatv/powerlevel10k), the
+instructions are the same except that you don't need to clone gitstatus. Instead, change your
+current directory to `/path/to/powerlevel10k/gitstatus` (`/path/to/powerlevel10k` is the directory
+where you've installed Powerlevel10k) and run `./build -w -s -d docker` from there as described
+above.
-This needs binutils, cmake, gcc, g++, git, GNU make, wget, zsh and either shasum or sha256sum.
-
-Once build completes, *do not delete or move any files*. Package the whole directory as is. Don't
-add the directory or any of its subdirectories to `PATH`.
-
-You probably don't want to build in docker, so don't pass `-d` to `./build`.
-
-gitstatus depends on a [custom fork of libgit2](https://github.com/romkatv/libgit2/). When you run
-`./build -w`, it'll automatically download the appropriate libgit2 tarball and verify its sha256.
-If you want to separate the downloading of source tarballs from compilation, you can download the
-libgit2 tarball manually and invoke `./build` without `-w`.
-
-```zsh
-# Download and extract gitstatus tarball.
-gitstatus_version=1.1.0 # IMPORTANT: CHANGE VERSION TO WHAT YOU WANT
-wget https://github.com/romkatv/gitstatus/archive/v"$gitstatus_version".tar.gz
-tar -xzf v"$gitstatus_version".tar.gz
-cd gitstatus-"$gitstatus_version"
-
-# Download libgit2 tarball and place it where ./build expects it.
-. ./build.info
-libgit2_path=./deps/libgit2-"$libgit2_version".tar.gz
-libgit2_url=https://github.com/romkatv/libgit2/archive/"$libgit2_version".tar.gz
-wget -O "$libgit2_path" "$libgit2_url"
-
-# Compile gitstatusd.
-./build
-
-# Post-process.
-rm ./deps/libgit2-*.tar.gz
-for file in *.zsh install; do
- zsh -fc "emulate zsh -o no_aliases && zcompile -R -- $file.zwc $file"
-done
-```
+### Compiling for distribution
-Note that the URL and the content of the libgit2 tarball are fully defined by the main gitstatus
-tarball. Thus, you can set URLs and sha256 checksums of the two tarball in the same place (package
-definition) and update them at the same time when bumping package version. In other words, you don't
-have to extract `libgit2_version` programmatically. You can manually copy it from [build.info](
- https://github.com/romkatv/gitstatus/blob/master/build.info) to your package definition, if you
-prefer.
-
-[Powerlevel10k](https://github.com/romkatv/powerlevel10k) has an embedded version of gitstatus. It
-must stay that way. If you decide to package both of them, follow the respective instructions from
-each project. The embedded gitstatus in Powerlevel10k won't conflict with the standalone gitstatus.
-They can have different versions and can coexist within the same Zsh process. Do not attempt to
-surgically remove gitstatus from Powerlevel10k, package the result and then force Powerlevel10k to
-use a separately packaged gitstatus. Instead, treat Powerlevel10k and gitstatus as independent
-projects that don't depend on each other.
+It's currently neither easy nor recommended to package and distribute gitstatus. There are no
+instructions you can follow that would allow you to easily update your package when new versions of
+gitstatus are released. This may change in the future but not soon.
## License