more likely to eat your data. It's also missing some
probably-critical features, though fewer than it used to be.
- - It requires python >= 2.6, a C compiler, and an installed git
- version >= 1.5.6. It also requires par2 if you want fsck to be
- able to generate the information needed to recover from some types
- of corruption.
+ - It requires python 3.7 or newer (or 2.7 for a bit longer), a C
+ compiler, and an installed git version >= 1.5.6. It also requires
+ par2 if you want fsck to be able to generate the information needed
+ to recover from some types of corruption. While python 2.7 is
+ still supported, please make plans to upgrade. Python 2 upstream
+ support ended on 2020-01-01, and we plan to drop support soon too.
- It currently only works on Linux, FreeBSD, NetBSD, OS X >= 10.4,
- Solaris, or Windows (with Cygwin, and maybe with WSL). Patches to
- support other platforms are welcome.
+ Solaris, or Windows (with Cygwin, and WSL). Patches to support
+ other platforms are welcome.
- Until resolved, a [glibc bug](https://sourceware.org/bugzilla/show_bug.cgi?id=26034)
might cause bup to crash on startup for some (unusual) command line
- Any items in "Things that are stupid" below.
-
Notable changes introduced by a release
=======================================
+ - <a href="note/0.32-from-0.31.md">Changes in 0.32 as compared to 0.31</a>
+ - <a href="note/0.31-from-0.30.1.md">Changes in 0.31 as compared to 0.30.1</a>
- <a href="note/0.30.1-from-0.30.md">Changes in 0.30.1 as compared to 0.30</a>
- <a href="note/0.30-from-0.29.3.md">Changes in 0.30 as compared to 0.29.3</a>
- <a href="note/0.29.3-from-0.29.2.md">Changes in 0.29.3 as compared to 0.29.2</a>
bup, please check out the latest stable release like this:
```sh
- git checkout 0.29.1
+ git checkout 0.32
```
You can see the latest stable release here:
apt-get build-dep bup
```
- Otherwise try this (substitute python2.6-dev if you have an older
- system):
+ Otherwise try this:
+
+ ```sh
+ apt-get install python3.7-dev python3-fuse
+ apt-get install python3-pyxattr python3-pytest
+ apt-get install python3-distutils
+ apt-get install pkg-config linux-libc-dev libacl1-dev
+ apt-get install gcc make acl attr rsync
+ apt-get isntall python3-pytest-xdist # optional (parallel tests)
+ apt-get install par2 # optional (error correction)
+ apt-get install libreadline-dev # optional (bup ftp)
+ apt-get install python3-tornado # optional (bup web)
+
+ ```
+ Or, if you can't yet migrate to Python 3 (please try to soon):
```sh
apt-get install python2.7-dev python-fuse
- apt-get install python-pyxattr
+ apt-get install python-pyxattr python-pytest
apt-get install pkg-config linux-libc-dev libacl1-dev
- apt-get install acl attr
+ apt-get install gcc make acl attr rsync
+ apt-get isntall python-pytest-xdist # optional (parallel tests)
+ apt-get install par2 # optional (error correction)
apt-get install libreadline-dev # optional (bup ftp)
apt-get install python-tornado # optional (bup web)
```
```sh
yum groupinstall "Development Tools"
- yum install python python-devel libacl-devel
+ yum install python2 python2-devel libacl-devel pylibacl
yum install fuse-python pyxattr
yum install perl-Time-HiRes
yum install readline-devel # optional (bup ftp)
pip install tornado
```
- - Build the python module and symlinks:
+ - Build:
```sh
make
make check
```
+ If you have the Python xdist module installed, then you can
+ probably run the tests faster by adding the make -j option (see <a
+ href="HACKING">./HACKING</a> for additional information):
+
+ ```sh
+ make -j check
+ ```
+
The tests should pass. If they don't pass for you, stop here and
send an email to bup-list@googlegroups.com. Though if there are
symbolic links along the current working directory path, the tests
make install DESTDIR=/opt/bup PREFIX=''
```
- - The Python executable that bup will use is chosen by ./configure,
- which will search for a reasonable version unless PYTHON is set in
- the environment, in which case, bup will use that path. You can
- see which Python executable was chosen by looking at the
- configure output, or examining cmd/python-cmd.sh, and you can
- change the selection by re-running ./configure.
+ - The Python version that bup will use is determined by the
+ `python-config` program chosen by `./configure`, which will search
+ for a reasonable version unless `BUP_PYTHON_CONFIG` is set in the
+ environment. You can see which Python executable was chosen by
+ looking at the configure output, or examining
+ `config/config.var/bup-python-config`, and you can change the
+ selection by re-running `./configure`.
From binary packages
--------------------
https://www.archlinux.org/packages/?sort=&q=bup
- Fedora:
https://apps.fedoraproject.org/packages/bup
+ - macOS (Homebrew):
+ https://formulae.brew.sh/formula/bup
Using bup
cycle and error out, so "ls -R" and "find" will not work.
- There is no support for ACLs. If/when some enterprising person
- fixes this, adjust t/compare-trees.
+ fixes this, adjust dev/compare-trees.
Notes on Cygwin
---------------
- There is no support for ACLs. If/when some enterprising person
- fixes this, adjust t/compare-trees.
+ fixes this, adjust dev/compare-trees.
- - In t/test.sh, two tests have been disabled. These tests check to
- see that repeated saves produce identical trees and that an
- intervening index doesn't change the SHA1. Apparently Cygwin has
- some unusual behaviors with respect to access times (that probably
- warrant further investigation). Possibly related:
+ - In test/ext/test-misc, two tests have been disabled. These tests
+ check to see that repeated saves produce identical trees and that
+ an intervening index doesn't change the SHA1. Apparently Cygwin
+ has some unusual behaviors with respect to access times (that
+ probably warrant further investigation). Possibly related:
http://cygwin.com/ml/cygwin/2007-06/msg00436.html
-------------
- There is no support for ACLs. If/when some enterprising person
- fixes this, adjust t/compare-trees.
+ fixes this, adjust dev/compare-trees.
How it works
bup is a work in progress and there are many ways it can still be improved.
If you'd like to contribute patches, ideas, or bug reports, please join the
-bup mailing list.
+<a href="mailto:bup-list@googlegroups.com">bup mailing list</a>:
You can find the mailing list archives here:
bup-list+subscribe@googlegroups.com
+You can also reach us via the
+\#bup IRC channel at ircs://irc.libera.chat:6697/bup
+on the [libera.chat](https://libera.chat/) network or via this
+[web interface](https://web.libera.chat/?channels=bup).
+
Please see <a href="HACKING">./HACKING</a> for
additional information, i.e. how to submit patches (hint - no pull
requests), how we handle branches, etc.
Have fun,
Avery
+
+<!--
+Local Variables:
+mode: markdown
+End:
+-->