X-Git-Url: https://arthur.barton.de/gitweb/?p=bup.git;a=blobdiff_plain;f=README.md;h=f706d9ab4d78cd0619d69b945600173ccb81ea8b;hp=d08ea4ca28f32052a86a75b749ccf4ab2251a758;hb=ab0b333150fb4f573552db0265d065b0e8219b04;hpb=093752b42c5548028c6f84c67f7741b2321c512f diff --git a/README.md b/README.md index d08ea4c..f706d9a 100644 --- a/README.md +++ b/README.md @@ -71,21 +71,28 @@ Reasons you might want to avoid bup 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. - - Any items in "Things that are stupid" below. + - 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 + argument values, when bup is configured to use Python 3. + - Any items in "Things that are stupid" below. Notable changes introduced by a release ======================================= + - Changes in 0.32 as compared to 0.31 + - Changes in 0.31 as compared to 0.30.1 - Changes in 0.30.1 as compared to 0.30 - Changes in 0.30 as compared to 0.29.3 - Changes in 0.29.3 as compared to 0.29.2 @@ -123,7 +130,7 @@ From source 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: @@ -139,15 +146,31 @@ From source 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 python-pylibacl - apt-get install linux-libc-dev - apt-get install acl attr - apt-get install python-tornado # optional + apt-get install python-pyxattr python-pytest + apt-get install pkg-config linux-libc-dev libacl1-dev + 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) ``` On CentOS (for CentOS 6, at least), this should be sufficient (run @@ -155,13 +178,15 @@ From source ```sh yum groupinstall "Development Tools" - yum install python python-devel - yum install fuse-python pyxattr pylibacl + 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) + yum install python-tornado # optional (bup web) ``` In addition to the default CentOS repositories, you may need to add - RPMForge (for fuse-python) and EPEL (for pyxattr and pylibacl). + RPMForge (for fuse-python) and EPEL (for pyxattr). On Cygwin, install python, make, rsync, and gcc4. @@ -172,7 +197,7 @@ From source pip install tornado ``` - - Build the python module and symlinks: + - Build: ```sh make @@ -190,6 +215,14 @@ From source 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 ./HACKING 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 @@ -211,12 +244,13 @@ From source 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 -------------------- @@ -234,6 +268,8 @@ Binary packages of bup are known to be built for the following OSes: 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 @@ -445,20 +481,20 @@ Notes on NetBSD/pkgsrc 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 @@ -466,7 +502,7 @@ Notes on OS X ------------- - 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 @@ -637,7 +673,7 @@ How you can help 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. +bup mailing list: You can find the mailing list archives here: @@ -647,6 +683,11 @@ and you can subscribe by sending a message to: 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 ./HACKING for additional information, i.e. how to submit patches (hint - no pull requests), how we handle branches, etc. @@ -655,3 +696,9 @@ requests), how we handle branches, etc. Have fun, Avery + +