diff --git a/.gitignore b/.gitignore index 8cc96f4..86e8bd6 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,3 @@ monotone-0.48.tar.gz /monotone-0.99.tar.gz /monotone-0.99.1.tar.gz /monotone-1.0.tar.bz2 -/monotone-1.1.tar.bz2 diff --git a/README.monotone-server b/README.monotone-server index 2f3b00c..a2640d3 100644 --- a/README.monotone-server +++ b/README.monotone-server @@ -1,38 +1,42 @@ -The Fedora build of monotone provides an extra RPM "monotone-server". This -package is intended to make it easy to set up an unattended server +The Fedora Extras build of monotone provides an extra RPM monotone-server. +This package is intended to make it easy to set up an unattended server installation for Monotone's Netsync protocol (i.e. "monotone serve"). -The package contains a systemd service unit for running the server, installed -as /usr/sbin/monotone-server. (This is just a symlink to monotone that the -systemd runs instead. This enables matching "monotone-server" processes with -ps to distinguish server instances from people using monotone.) +The package a standard Fedora-style init.d script with chkconfig support +for running the server, installed as /usr/sbin/monotone-server. +(This is just a symlink to monotone that the init script runs instead. +This enables matching "monotone-server" processes with ps to distinguish +server instances from people using monotone.) The /etc/monotone directory serves as ~/.monotone for the server. This directory and its contents are not writable by the "monotone" user ID under -which the network server runs. The database lives in /var/lib/monotone, which -the "monotone" user ID must write to. +which the network server runs. The database lives in /var/lib/monotone, +which the "monotone" user ID must write to. -On startup, the systemd service will generate a private key for the -server to use, if none exists yet, using -/usr/libexec/monotone-server-genkey. The key identification will -contain the host's FQDN (from /bin/hostname -f). +The init.d script will generate a private key for the server to use, if +none exists yet. The key identification will be the host's FQDN (from +/bin/hostname -f). You can use "service monotone genkey [IDENT]" to +generate the private key by hand and set up the unattended server to use +it, supplying a different key identification string if you like. Before starting the server, the script will migrate an old database format if you had a previous version of the monotone-server installation. +(This includes converting private keys from the old format.) +You can always do this explicitly with "service monotone migrate". Access to the server is controlled by the /etc/monotone/read-permissions and -/etc/monotone/write-permissions files, unless you write your own Lua hooks in -/etc/monotone/monotonerc. These files are not created or edited by the RPM -scripts, you must create them. These files refer to key identification +/etc/monotone/write-permissions files, unless you write your own Lua hooks +in /etc/monotone/monotonerc. These files are not created or editted by the +RPM scripts, you must create them. These files refer to key identification strings for keys already the database. Anyone allowed write access by the -network server can put new keys in the database with "monotone push" using the ---key-to-push option. To bootstrap this, /etc/monotone/write-permission must -allow some key and that key must be in the database already. You can put a -key in the server's database easily with /usr/libexec/monotone-server-import, +netwrok server can put new keys in the database with "monotone push" using +the --key-to-push option. To bootstrap this, /etc/monotone/write-permission +must allow some key and that key must be in the database already. You can +put a key in the server's database easily with "service monotone import", e.g. to import the public key for a private key in ~/.monotone/keys: - mtn pubkey me@my.com | sudo /usr/libexec/monotone-server-import + mtn pubkey me@my.com | sudo service monotone import -For problems with this package or its scripts, please file bugs at -http://bugzilla.redhat.com/ for the "monotone" component in the "Fedora" -product. +For problems with this package or its scripts, please file bugs +at http://bugzilla.redhat.com/ for the "monotone" component +in th "Fedora Extras" product. diff --git a/monotone-1.0-disable-xdelta-test.patch b/monotone-1.0-disable-xdelta-test.patch new file mode 100644 index 0000000..e4b3b64 --- /dev/null +++ b/monotone-1.0-disable-xdelta-test.patch @@ -0,0 +1,41 @@ +diff -up monotone-1.0/Makefile.am.orig monotone-1.0/Makefile.am +--- monotone-1.0/Makefile.am.orig 2011-09-26 17:57:52.000000000 +0200 ++++ monotone-1.0/Makefile.am 2011-09-26 17:58:13.000000000 +0200 +@@ -191,7 +191,7 @@ UNIT_TESTERS = \ + test/unit/tests/restrictions.cc test/unit/tests/revision.cc \ + test/unit/tests/simplestring_xform.cc test/unit/tests/transforms.cc \ + test/unit/tests/uri.cc test/unit/tests/vocab.cc \ +- test/unit/tests/xdelta.cc test/unit/tests/numeric_vocab.cc \ ++ test/unit/tests/numeric_vocab.cc \ + test/unit/tests/sha1.cc test/unit/tests/string_queue.cc \ + test/unit/unit_tester.cc + +diff -up monotone-1.0/Makefile.in.orig monotone-1.0/Makefile.in +--- monotone-1.0/Makefile.in.orig 2011-09-26 17:57:58.000000000 +0200 ++++ monotone-1.0/Makefile.in 2011-09-26 17:59:19.000000000 +0200 +@@ -422,7 +422,6 @@ am__objects_19 = test/unit/tests/basic_i + test/unit/tests/simplestring_xform.$(OBJEXT) \ + test/unit/tests/transforms.$(OBJEXT) \ + test/unit/tests/uri.$(OBJEXT) test/unit/tests/vocab.$(OBJEXT) \ +- test/unit/tests/xdelta.$(OBJEXT) \ + test/unit/tests/numeric_vocab.$(OBJEXT) \ + test/unit/tests/sha1.$(OBJEXT) \ + test/unit/tests/string_queue.$(OBJEXT) \ +@@ -887,7 +886,7 @@ UNIT_TESTERS = \ + test/unit/tests/restrictions.cc test/unit/tests/revision.cc \ + test/unit/tests/simplestring_xform.cc test/unit/tests/transforms.cc \ + test/unit/tests/uri.cc test/unit/tests/vocab.cc \ +- test/unit/tests/xdelta.cc test/unit/tests/numeric_vocab.cc \ ++ test/unit/tests/numeric_vocab.cc \ + test/unit/tests/sha1.cc test/unit/tests/string_queue.cc \ + test/unit/unit_tester.cc + +@@ -1774,8 +1773,6 @@ test/unit/tests/uri.$(OBJEXT): test/unit + test/unit/tests/$(DEPDIR)/$(am__dirstamp) + test/unit/tests/vocab.$(OBJEXT): test/unit/tests/$(am__dirstamp) \ + test/unit/tests/$(DEPDIR)/$(am__dirstamp) +-test/unit/tests/xdelta.$(OBJEXT): test/unit/tests/$(am__dirstamp) \ +- test/unit/tests/$(DEPDIR)/$(am__dirstamp) + test/unit/tests/numeric_vocab.$(OBJEXT): \ + test/unit/tests/$(am__dirstamp) \ + test/unit/tests/$(DEPDIR)/$(am__dirstamp) diff --git a/monotone-1.0-file_handle.patch b/monotone-1.0-file_handle.patch new file mode 100644 index 0000000..f295f25 --- /dev/null +++ b/monotone-1.0-file_handle.patch @@ -0,0 +1,155 @@ +# +# +# patch "src/rcs_file.cc" +# from [885b3fbe7b6cfed78816f0e57cd71d44616213c6] +# to [03cf68912a4a708545ebce3d415c0e970ddead0b] +# +============================================================ +--- src/rcs_file.cc 885b3fbe7b6cfed78816f0e57cd71d44616213c6 ++++ src/rcs_file.cc 03cf68912a4a708545ebce3d415c0e970ddead0b +@@ -42,12 +42,12 @@ struct + + #ifdef HAVE_MMAP + struct +-file_handle ++rcs_file_handle + { + string const & filename; + off_t length; + int fd; +- file_handle(string const & fn) : ++ rcs_file_handle(string const & fn) : + filename(fn), + length(0), + fd(-1) +@@ -60,13 +60,13 @@ file_handle + if (fd == -1) + throw oops("open of " + filename + " failed"); + } +- ~file_handle() ++ ~rcs_file_handle() + { + if (close(fd) == -1) + throw oops("close of " + filename + " failed"); + } + }; +-struct file_source ++struct rcs_file_source + { + string const & filename; + int fd; +@@ -91,7 +91,7 @@ struct file_source + ++pos; + return good(); + } +- file_source(string const & fn, ++ rcs_file_source(string const & fn, + int f, + off_t len) : + filename(fn), +@@ -104,7 +104,7 @@ struct file_source + if (mapping == MAP_FAILED) + throw oops("mmap of " + filename + " failed"); + } +- ~file_source() ++ ~rcs_file_source() + { + if (munmap(mapping, length) == -1) + throw oops("munmapping " + filename + " failed, after reading RCS file"); +@@ -112,12 +112,12 @@ struct + }; + #elif defined(WIN32) + struct +-file_handle ++rcs_file_handle + { + string const & filename; + off_t length; + HANDLE fd; +- file_handle(string const & fn) : ++ rcs_file_handle(string const & fn) : + filename(fn), + length(0), + fd(NULL) +@@ -134,7 +134,7 @@ file_handle + if (fd == NULL) + throw oops("open of " + filename + " failed"); + } +- ~file_handle() ++ ~rcs_file_handle() + { + if (CloseHandle(fd)==0) + throw oops("close of " + filename + " failed"); +@@ -142,7 +142,7 @@ struct + }; + + struct +-file_source ++rcs_file_source + { + string const & filename; + HANDLE fd,map; +@@ -167,7 +167,7 @@ file_source + ++pos; + return good(); + } +- file_source(string const & fn, ++ rcs_file_source(string const & fn, + HANDLE f, + off_t len) : + filename(fn), +@@ -183,7 +183,7 @@ file_source + if (mapping==NULL) + throw oops("MapViewOfFile of " + filename + " failed"); + } +- ~file_source() ++ ~rcs_file_source() + { + if (UnmapViewOfFile(mapping)==0) + throw oops("UnmapViewOfFile of " + filename + " failed"); +@@ -193,7 +193,7 @@ file_source + }; + #else + // no mmap at all +-typedef istream file_source; ++typedef istream rcs_file_source; + #endif + + typedef enum +@@ -220,7 +220,7 @@ static token_type + } + + static token_type +-get_token(file_source & ist, ++get_token(rcs_file_source & ist, + string & str, + size_t & line, + size_t & col) +@@ -303,14 +303,14 @@ struct parser + + struct parser + { +- file_source & ist; ++ rcs_file_source & ist; + rcs_file & r; + string token; + token_type ttype; + + size_t line, col; + +- parser(file_source & s, ++ parser(rcs_file_source & s, + rcs_file & r) + : ist(s), r(r), line(1), col(1) + {} +@@ -489,8 +489,8 @@ parse_rcs_file(string const & filename, + parse_rcs_file(string const & filename, rcs_file & r) + { + #if defined(HAVE_MMAP) || defined(WIN32) +- file_handle handle(filename); +- file_source ifs(filename, handle.fd, handle.length); ++ rcs_file_handle handle(filename); ++ rcs_file_source ifs(filename, handle.fd, handle.length); + #else + ifstream ifs(filename.c_str()); + ifs.unsetf(ios_base::skipws); diff --git a/monotone-1.0-fix-help.patch b/monotone-1.0-fix-help.patch new file mode 100644 index 0000000..abbb024 --- /dev/null +++ b/monotone-1.0-fix-help.patch @@ -0,0 +1,21 @@ +# +# +# patch "src/options_list.hh" +# from [0462e302b89179f4acb28ecb91f4255140d4a4a7] +# to [27c44e89ebc9a828ac0a7b91505f997884646062] +# +============================================================ +--- src/options_list.hh 0462e302b89179f4acb28ecb91f4255140d4a4a7 ++++ src/options_list.hh 27c44e89ebc9a828ac0a7b91505f997884646062 +@@ -381,9 +381,9 @@ SIMPLE_OPTION(move_conflicting_paths, + SIMPLE_OPTION(move_conflicting_paths, + "move-conflicting-paths/no-move-conflicting-paths", + bool, +- (F("move conflicting, unversioned paths into '%s' " ++ strdup((F("move conflicting, unversioned paths into '%s' " + "before proceeding with any workspace change") % +- bookkeeping_resolutions_dir).str().c_str()) ++ bookkeeping_resolutions_dir).str().c_str())) + + OPTSET_REL(globals, ssh_sign) + SIMPLE_INITIALIZED_OPTION(ssh_sign, "ssh-sign", enum_string, "yes,no,only,check", diff --git a/monotone-1.0-stacktrace-on-crash.patch b/monotone-1.0-stacktrace-on-crash.patch deleted file mode 100644 index a8d773c..0000000 --- a/monotone-1.0-stacktrace-on-crash.patch +++ /dev/null @@ -1,63 +0,0 @@ -Add a hack to the fatal signal handlers to invoke gdb and get a full stack -trace on crash. This won't fix anything, but by activating this mode -in the testsuite, we can get more detail on the alpha and sparc FTBFSes. - -Index: monotone-1.0/src/unix/main.cc -=================================================================== ---- monotone-1.0.orig/src/unix/main.cc 2009-04-12 13:39:49.000000000 -0700 -+++ monotone-1.0/src/unix/main.cc 2009-04-12 13:42:56.000000000 -0700 -@@ -36,12 +36,21 @@ - - #include "../base.hh" - #include --#include -+#include - #include - #include - #include -+#include -+ -+#if __GLIBC__ >= 3 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) -+# define HAVE_BACKTRACE -+# include -+#endif - - static char const * argv0; -+#ifdef HAVE_BACKTRACE -+static bool backtrace_on_crash = false; -+#endif - - // a convenient wrapper - inline void -@@ -75,6 +84,18 @@ - write_str_to_stderr("do not send a core dump, but if you have one, " - "\nplease preserve it in case we ask you for " - "information from it.\n"); -+#ifdef HAVE_BACKTRACE -+ if (backtrace_on_crash) -+ { -+ void *tracebuf[20]; -+ int frames = backtrace(tracebuf, 20); -+ if (frames) -+ { -+ write_str_to_stderr("stack trace:\n"); -+ backtrace_symbols_fd(tracebuf, frames, 2); -+ } -+ } -+#endif - - raise(signo); - // The signal has been reset to the default handler by SA_RESETHAND -@@ -129,6 +150,12 @@ - - argv0 = argv[0]; - -+#ifdef HAVE_BACKTRACE -+ char *ev = getenv("MTN_STACKTRACE_ON_CRASH"); -+ if (ev && ev[0]) -+ backtrace_on_crash = true; -+#endif -+ - bug_signal_action.sa_flags = SA_RESETHAND; - bug_signal_action.sa_handler = &bug_signal; - sigemptyset(&bug_signal_action.sa_mask); diff --git a/monotone-1.1-boost.patch b/monotone-1.1-boost.patch deleted file mode 100644 index 84e80f1..0000000 --- a/monotone-1.1-boost.patch +++ /dev/null @@ -1,555 +0,0 @@ -A function macro named E clashes with internal boost definitions. Rearrange -the order of header inclusion so that affected boost headers are included -before monotone defines the macro. - -Also, stop bundling boost/circular_buffer, which is available in current -versions of boost. - -diff -up monotone-1.1/Makefile.in.orig monotone-1.1/Makefile.in ---- monotone-1.1/Makefile.in.orig 2014-05-04 03:18:01.000000000 -0600 -+++ monotone-1.1/Makefile.in 2020-06-30 10:02:57.849746309 -0600 -@@ -156,10 +156,7 @@ am__v_AR_1 = - src_lib3rdparty_a_AR = $(AR) $(ARFLAGS) - src_lib3rdparty_a_LIBADD = - am__src_lib3rdparty_a_SOURCES_DIST = \ -- src/boost/circular_buffer_adaptor.hpp \ -- src/boost/circular_buffer_base.hpp \ -- src/boost/circular_buffer_fwd.hpp \ -- src/boost/circular_buffer.hpp src/netxx/accept.cxx \ -+ src/netxx/accept.cxx \ - src/netxx/accept.h src/netxx/address.cxx src/netxx/common.h \ - src/netxx/compat.h src/netxx/datagram.cxx \ - src/netxx/datagramserver.cxx src/netxx/osutil.cxx \ -@@ -933,12 +930,6 @@ NETXX_SOURCES = \ - src/netxx/stream.h src/netxx/streambase.h \ - src/netxx/streamserver.h src/netxx/timeout.h src/netxx/types.h - --BOOST_SANDBOX_SOURCES = \ -- src/boost/circular_buffer_adaptor.hpp \ -- src/boost/circular_buffer_base.hpp \ -- src/boost/circular_buffer_fwd.hpp \ -- src/boost/circular_buffer.hpp -- - UNIX_PLATFORM_SOURCES = \ - src/unix/read_password.cc src/unix/get_system_flavour.cc \ - src/unix/process.cc src/unix/terminal.cc src/unix/inodeprint.cc \ -@@ -1026,7 +1017,7 @@ nodist_test_bin_tester_SOURCES = test/sr - noinst_LIBRARIES = src/libplatform.a src/lib3rdparty.a - src_libplatform_a_SOURCES = src/platform.hh $(am__append_1) \ - $(am__append_6) --src_lib3rdparty_a_SOURCES = $(BOOST_SANDBOX_SOURCES) $(NETXX_SOURCES) \ -+src_lib3rdparty_a_SOURCES = $(NETXX_SOURCES) \ - $(am__append_9) $(am__append_11) $(am__append_13) \ - $(am__append_14) - bashcompdir = $(sysconfdir)/bash_completion.d -diff -up monotone-1.1/src/ancestry.cc.orig monotone-1.1/src/ancestry.cc ---- monotone-1.1/src/ancestry.cc.orig 2014-05-04 03:15:15.000000000 -0600 -+++ monotone-1.1/src/ancestry.cc 2020-06-30 11:34:52.796544704 -0600 -@@ -8,8 +8,8 @@ - // PURPOSE. - - #include "base.hh" --#include "sanity.hh" - #include "revision.hh" -+#include "sanity.hh" - #include "rev_height.hh" - #include "roster.hh" - -diff -up monotone-1.1/src/asciik.hh.orig monotone-1.1/src/asciik.hh ---- monotone-1.1/src/asciik.hh.orig 2014-05-04 03:15:15.000000000 -0600 -+++ monotone-1.1/src/asciik.hh 2020-06-30 10:15:12.007654082 -0600 -@@ -11,8 +11,8 @@ - #define __ASCIIK_HH__ - - #include --#include "vector.hh" - #include "vocab.hh" -+#include "vector.hh" - - class asciik - { -diff -up monotone-1.1/src/automate.cc.orig monotone-1.1/src/automate.cc ---- monotone-1.1/src/automate.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/automate.cc 2020-06-30 11:38:43.421264711 -0600 -@@ -13,12 +13,12 @@ - #include - #include - #include --#include "vector.hh" - - #include - #include - #include "lexical_cast.hh" - #include -+#include "vector.hh" - - #include "app_state.hh" - #include "automate_stdio_helpers.hh" -diff -up monotone-1.1/src/basic_io.hh.orig monotone-1.1/src/basic_io.hh ---- monotone-1.1/src/basic_io.hh.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/basic_io.hh 2020-06-30 09:47:13.560973524 -0600 -@@ -11,11 +11,11 @@ - #ifndef __BASIC_IO_HH__ - #define __BASIC_IO_HH__ - --#include "vector.hh" - #include - - #include "paths.hh" - #include "sanity.hh" -+#include "vector.hh" - #include "vocab.hh" - #include "numeric_vocab.hh" - #include "char_classifiers.hh" -diff -up monotone-1.1/src/charset.cc.orig monotone-1.1/src/charset.cc ---- monotone-1.1/src/charset.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/charset.cc 2020-06-30 09:37:09.073857197 -0600 -@@ -7,13 +7,13 @@ - // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - // PURPOSE. - --#include "base.hh" --#include "vector.hh" -- - #include - #include - #include - -+#include "base.hh" -+#include "vector.hh" -+ - #include "charset.hh" - #include "numeric_vocab.hh" - #include "sanity.hh" -diff -up monotone-1.1/src/cmd_list.cc.orig monotone-1.1/src/cmd_list.cc ---- monotone-1.1/src/cmd_list.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/cmd_list.cc 2020-06-30 10:12:30.695874287 -0600 -@@ -10,7 +10,6 @@ - - #include "base.hh" - #include --#include "safe_map.hh" - #include - #include - #include -@@ -18,6 +17,7 @@ - #include - - #include "basic_io.hh" -+#include "safe_map.hh" - #include "cert.hh" - #include "charset.hh" - #include "cmd.hh" -diff -up monotone-1.1/src/commands.hh.orig monotone-1.1/src/commands.hh ---- monotone-1.1/src/commands.hh.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/commands.hh 2020-06-30 10:09:04.000156549 -0600 -@@ -10,8 +10,8 @@ - #ifndef __COMMANDS_HH__ - #define __COMMANDS_HH__ - --#include "vector.hh" - #include "options.hh" -+#include "vector.hh" - class app_state; - class utf8; - -diff -up monotone-1.1/src/database.cc.orig monotone-1.1/src/database.cc ---- monotone-1.1/src/database.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/database.cc 2020-06-30 11:07:31.767911489 -0600 -@@ -17,13 +17,13 @@ - #include - #include - #include --#include "vector.hh" - - #include - #include - #include - #include - #include -+#include "vector.hh" - - #include - #include -diff -up monotone-1.1/src/database.hh.orig monotone-1.1/src/database.hh ---- monotone-1.1/src/database.hh.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/database.hh 2020-06-30 11:39:49.533184469 -0600 -@@ -11,10 +11,10 @@ - #ifndef __DATABASE_HH__ - #define __DATABASE_HH__ - --#include "vector.hh" - #include - #include - #include -+#include "vector.hh" - - #include "rev_types.hh" - #include "cert.hh" -diff -up monotone-1.1/src/enumerator.cc.orig monotone-1.1/src/enumerator.cc ---- monotone-1.1/src/enumerator.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/enumerator.cc 2020-06-30 11:17:48.813031155 -0600 -@@ -11,9 +11,9 @@ - #include - #include - #include --#include "vector.hh" - - #include "cset.hh" -+#include "vector.hh" - #include "enumerator.hh" - #include "revision.hh" - #include "vocab.hh" -diff -up monotone-1.1/src/file_io.cc.orig monotone-1.1/src/file_io.cc ---- monotone-1.1/src/file_io.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/file_io.cc 2020-06-30 09:50:13.560669858 -0600 -@@ -12,9 +12,9 @@ - #include - - #include --#include "botan_pipe_cache.hh" - - #include "file_io.hh" -+#include "botan_pipe_cache.hh" - #include "sanity.hh" - #include "simplestring_xform.hh" - #include "charset.hh" -diff -up monotone-1.1/src/globish.cc.orig monotone-1.1/src/globish.cc ---- monotone-1.1/src/globish.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/globish.cc 2020-06-30 09:56:22.529324520 -0600 -@@ -9,9 +9,9 @@ - // PURPOSE. - - #include "base.hh" -+#include "option.hh" // for arg_type - #include "sanity.hh" - #include "globish.hh" --#include "option.hh" // for arg_type - #include "numeric_vocab.hh" - - #include -diff -up monotone-1.1/src/hmac.cc.orig monotone-1.1/src/hmac.cc ---- monotone-1.1/src/hmac.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/hmac.cc 2020-06-30 11:43:21.171953985 -0600 -@@ -10,9 +10,9 @@ - #include "base.hh" - #include - --#include "sanity.hh" - #include "hmac.hh" - #include "vocab.hh" -+#include "sanity.hh" - #include "constants.hh" - - using std::string; -diff -up monotone-1.1/src/key_store.hh.orig monotone-1.1/src/key_store.hh ---- monotone-1.1/src/key_store.hh.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/key_store.hh 2020-06-30 11:06:22.925984151 -0600 -@@ -19,8 +19,8 @@ - #include - #endif - --#include "vector.hh" - #include "vocab.hh" -+#include "vector.hh" - #include "paths.hh" - - class app_state; -diff -up monotone-1.1/src/migrate_work.cc.orig monotone-1.1/src/migrate_work.cc ---- monotone-1.1/src/migrate_work.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/migrate_work.cc 2020-06-30 10:57:13.325615053 -0600 -@@ -8,8 +8,8 @@ - // PURPOSE. - - #include "base.hh" --#include "sanity.hh" - #include "cset.hh" -+#include "sanity.hh" - #include "simplestring_xform.hh" - #include "revision.hh" - #include "file_io.hh" -diff -up monotone-1.1/src/netcmd.cc.orig monotone-1.1/src/netcmd.cc ---- monotone-1.1/src/netcmd.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/netcmd.cc 2020-06-30 11:29:04.877013138 -0600 -@@ -8,11 +8,11 @@ - // PURPOSE. - - #include "base.hh" --#include "vector.hh" - #include - - #include "constants.hh" - #include "netcmd.hh" -+#include "vector.hh" - #include "netio.hh" - #include "numeric_vocab.hh" - #include "sanity.hh" -diff -up monotone-1.1/src/netcmd.hh.orig monotone-1.1/src/netcmd.hh ---- monotone-1.1/src/netcmd.hh.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/netcmd.hh 2020-06-30 11:25:11.916333993 -0600 -@@ -10,13 +10,13 @@ - #ifndef __NETCMD_HH__ - #define __NETCMD_HH__ - --#include "vector.hh" - #include - #include - #include - --#include "globish.hh" - #include "merkle_tree.hh" -+#include "vector.hh" -+#include "globish.hh" - #include "numeric_vocab.hh" - #include "uri.hh" - #include "vocab.hh" -diff -up monotone-1.1/src/network/listener_base.hh.orig monotone-1.1/src/network/listener_base.hh ---- monotone-1.1/src/network/listener_base.hh.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/network/listener_base.hh 2020-06-30 11:19:34.500864837 -0600 -@@ -11,10 +11,10 @@ - #ifndef __LISTENER_BASE_HH__ - #define __LISTENER_BASE_HH__ - --#include "reactable.hh" -- - #include - -+#include "reactable.hh" -+ - // This is not currently needed because there's only one kind of listener. - // But it's already here and not hurting anything, and might be useful if - // we want to add another kind of listener later (something that accepts -diff -up monotone-1.1/src/option.hh.orig monotone-1.1/src/option.hh ---- monotone-1.1/src/option.hh.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/option.hh 2020-06-30 09:23:18.706152659 -0600 -@@ -22,9 +22,9 @@ - #include - #include - #include --#include "vector.hh" -- - #include -+ -+#include "vector.hh" - #include "lexical_cast.hh" - - #include "sanity.hh" -diff -up monotone-1.1/src/project.cc.orig monotone-1.1/src/project.cc ---- monotone-1.1/src/project.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/project.cc 2020-06-30 10:58:34.582498413 -0600 -@@ -8,9 +8,9 @@ - // PURPOSE. - - #include "base.hh" --#include "vector.hh" - - #include "cert.hh" -+#include "vector.hh" - #include "database.hh" - #include "date_format.hh" - #include "project.hh" -diff -up monotone-1.1/src/rcs_file.cc.orig monotone-1.1/src/rcs_file.cc ---- monotone-1.1/src/rcs_file.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/rcs_file.cc 2020-06-30 11:10:45.213647993 -0600 -@@ -10,7 +10,6 @@ - - #include "base.hh" - #include --#include "vector.hh" - - #ifdef WIN32 - #include -@@ -32,6 +31,7 @@ - #endif - - #include "rcs_file.hh" -+#include "vector.hh" - #include "sanity.hh" - #include "char_classifiers.hh" - -diff -up monotone-1.1/src/rcs_file.hh.orig monotone-1.1/src/rcs_file.hh ---- monotone-1.1/src/rcs_file.hh.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/rcs_file.hh 2020-06-30 11:14:24.238333814 -0600 -@@ -10,9 +10,9 @@ - #ifndef __RCS_FILE_HH__ - #define __RCS_FILE_HH__ - --#include "vector.hh" - #include - #include -+#include "vector.hh" - - struct rcs_admin - { -diff -up monotone-1.1/src/rcs_import.cc.orig monotone-1.1/src/rcs_import.cc ---- monotone-1.1/src/rcs_import.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/rcs_import.cc 2020-06-30 11:29:44.579958676 -0600 -@@ -16,13 +16,13 @@ - #include - #include - #include --#include "vector.hh" - #include // memset - - #include - #include - #include "lexical_cast.hh" - #include -+#include "vector.hh" - - #include "cert.hh" - #include "constants.hh" -diff -up monotone-1.1/src/restrictions.cc.orig monotone-1.1/src/restrictions.cc ---- monotone-1.1/src/restrictions.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/restrictions.cc 2020-06-30 11:43:53.380932870 -0600 -@@ -8,9 +8,9 @@ - // PURPOSE. - - #include "base.hh" -+#include "restrictions.hh" - #include "safe_map.hh" - #include "vector.hh" --#include "restrictions.hh" - #include "file_io.hh" - #include "roster.hh" - #include "database.hh" // for parent_roster -diff -up monotone-1.1/src/revision.hh.orig monotone-1.1/src/revision.hh ---- monotone-1.1/src/revision.hh.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/revision.hh 2020-06-30 11:18:10.388997198 -0600 -@@ -11,8 +11,8 @@ - #define __REVISION_HH__ - - #include --#include "vector.hh" - #include "rev_types.hh" -+#include "vector.hh" - - class key_store; - class node_restriction; -diff -up monotone-1.1/src/roster.cc.orig monotone-1.1/src/roster.cc ---- monotone-1.1/src/roster.cc.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/roster.cc 2020-06-30 11:35:20.489511075 -0600 -@@ -11,10 +11,10 @@ - #include "base.hh" - #include - #include --#include "vector.hh" - #include - - #include "basic_io.hh" -+#include "vector.hh" - #include "cset.hh" - #include "database.hh" - #include "platform-wrapped.hh" -diff -up monotone-1.1/src/sanity.cc.orig monotone-1.1/src/sanity.cc ---- monotone-1.1/src/sanity.cc.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/sanity.cc 2020-06-30 09:32:43.994207307 -0600 -@@ -12,12 +12,11 @@ - #include - #include - #include --#include "vector.hh" -- - #include - --// circular_buffer is not in Boost 1.34; it's in monotone/boost. --#include "boost/circular_buffer.hpp" -+#include "vector.hh" -+ -+#include - - #include "lexical_cast.hh" - #include "constants.hh" -diff -up monotone-1.1/src/sanity.hh.orig monotone-1.1/src/sanity.hh ---- monotone-1.1/src/sanity.hh.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/sanity.hh 2020-06-30 09:31:59.698281778 -0600 -@@ -14,7 +14,7 @@ - #include - #include - --#include "boost/current_function.hpp" -+#include - - #include "numeric_vocab.hh" - #include "origin_type.hh" -diff -up monotone-1.1/src/sha1.cc.orig monotone-1.1/src/sha1.cc ---- monotone-1.1/src/sha1.cc.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/sha1.cc 2020-06-30 11:51:10.427645711 -0600 -@@ -22,10 +22,10 @@ - #include - #endif - --#include "sanity.hh" --#include "ui.hh" - #include "platform.hh" - #include "cmd.hh" -+#include "sanity.hh" -+#include "ui.hh" - #include "transforms.hh" - - using std::string; -diff -up monotone-1.1/src/transforms.cc.orig monotone-1.1/src/transforms.cc ---- monotone-1.1/src/transforms.cc.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/transforms.cc 2020-06-30 10:19:25.976307371 -0600 -@@ -12,12 +12,12 @@ - #include - #include - --#include "botan_pipe_cache.hh" --#include "gzip.hh" -- - #include "transforms.hh" - #include "char_classifiers.hh" - -+#include "botan_pipe_cache.hh" -+#include "gzip.hh" -+ - using std::string; - using Botan::Pipe; - using Botan::Base64_Encoder; -diff -up monotone-1.1/src/update.cc.orig monotone-1.1/src/update.cc ---- monotone-1.1/src/update.cc.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/update.cc 2020-06-30 11:03:03.726194356 -0600 -@@ -9,9 +9,9 @@ - - #include "base.hh" - #include -+#include "lexical_cast.hh" - #include "safe_map.hh" - #include "vector.hh" --#include "lexical_cast.hh" - - #include "database.hh" - #include "sanity.hh" -diff -up monotone-1.1/src/vocab.cc.orig monotone-1.1/src/vocab.cc ---- monotone-1.1/src/vocab.cc.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/vocab.cc 2020-06-30 09:36:18.769919254 -0600 -@@ -11,8 +11,8 @@ - #include "base.hh" - #include "constants.hh" - #include "hash_map.hh" --#include "sanity.hh" - #include "vocab.hh" -+#include "sanity.hh" - #include "char_classifiers.hh" - #include "transforms.hh" - -diff -up monotone-1.1/src/xdelta.cc.orig monotone-1.1/src/xdelta.cc ---- monotone-1.1/src/xdelta.cc.orig 2014-05-04 03:15:19.000000000 -0600 -+++ monotone-1.1/src/xdelta.cc 2020-06-30 11:13:38.014400075 -0600 -@@ -26,7 +26,6 @@ - - #include "base.hh" - #include --#include "vector.hh" - #include - #include - #include // memcmp -@@ -34,6 +33,7 @@ - #include - #include - -+#include "vector.hh" - #include "adler32.hh" - #include "hash_map.hh" - #include "numeric_vocab.hh" diff --git a/monotone-1.1-catch.patch b/monotone-1.1-catch.patch deleted file mode 100644 index cccee22..0000000 --- a/monotone-1.1-catch.patch +++ /dev/null @@ -1,111 +0,0 @@ -Do not catch exceptions of polymorphic type by value, as that requires the -compiler to slice the exceptions. Catching them by reference allows the -compiler to emit more efficient code. - ---- monotone-1.1/src/dates.cc.orig 2014-05-04 03:15:16.000000000 -0600 -+++ monotone-1.1/src/dates.cc 2020-06-30 12:15:35.765139561 -0600 -@@ -652,7 +652,7 @@ date_t::date_t(string const & s) - - d = our_timegm(t); - } -- catch (std::out_of_range) -+ catch (std::out_of_range &) - { - E(false, origin::user, - F("unrecognized date (monotone only understands ISO 8601 format)")); ---- monotone-1.1/src/key_packet.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/key_packet.cc 2020-06-30 12:14:15.581206185 -0600 -@@ -139,7 +139,7 @@ namespace - } - // since we do not want to prompt for a password to decode it finally, - // we ignore all other exceptions -- catch (Botan::Invalid_Argument) {} -+ catch (Botan::Invalid_Argument &) {} - } - void validate_no_more_args(istringstream & iss) const - { ---- monotone-1.1/src/key_store.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/key_store.cc 2020-06-30 12:14:36.965188418 -0600 -@@ -622,7 +622,7 @@ key_store_state::decrypt_private_key(key - break; - } - #if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,9,4) -- catch (Botan::Invalid_Argument) -+ catch (Botan::Invalid_Argument &) - #else - catch (Botan::Exception & e) - #endif ---- monotone-1.1/src/network/session.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/network/session.cc 2020-06-30 12:15:10.949160179 -0600 -@@ -362,7 +362,7 @@ bool session::do_work(transaction_guard - % errmsg.substr(4)); - } - } -- catch (boost::bad_lexical_cast) -+ catch (boost::bad_lexical_cast &) - { // ok, so it wasn't a number - } - } ---- monotone-1.1/src/option.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/option.cc 2020-06-30 12:12:46.420100297 -0600 -@@ -522,7 +522,7 @@ void concrete_option_set::from_command_l - o.resetter(); - } - } -- catch (boost::bad_lexical_cast) -+ catch (boost::bad_lexical_cast &) - { - throw bad_arg(o.longname, arg); - } -@@ -567,7 +567,7 @@ void concrete_option_set::from_key_value - o.resetter(); - } - } -- catch (boost::bad_lexical_cast) -+ catch (boost::bad_lexical_cast &) - { - throw bad_arg(o.longname, value); - } ---- monotone-1.1/src/packet.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/packet.cc 2020-06-30 12:13:54.197195613 -0600 -@@ -192,9 +192,9 @@ namespace - // since we do not want to prompt for a password to decode it finally, - // we ignore all other exceptions - #if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,9,11) -- catch (Passphrase_Required) {} -+ catch (Passphrase_Required &) {} - #else -- catch (Botan::Invalid_Argument) {} -+ catch (Botan::Invalid_Argument &) {} - #endif - } - void validate_certname(string const & cn) const ---- monotone-1.1/src/paths.hh.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/paths.hh 2020-06-30 12:12:29.845076986 -0600 -@@ -424,7 +424,7 @@ bool safe_compose(T const & p, char cons - result = p / path_component(s); - return true; - } -- catch (std::logic_error) -+ catch (std::logic_error &) - { - report_failed_path_composition(p, s, isdir); - return false; ---- monotone-1.1/src/sanity.cc.orig 2020-06-30 09:32:43.994207307 -0600 -+++ monotone-1.1/src/sanity.cc 2020-06-30 12:13:32.165164632 -0600 -@@ -433,13 +433,13 @@ sanity::gasp() - (*i)->gasp(tmp); - out << tmp; - } -- catch (logic_error) -+ catch (logic_error &) - { - out << tmp; - out << "\n"; - L(FL("ignoring error trigged by saving work set to debug log")); - } -- catch (recoverable_failure) -+ catch (recoverable_failure &) - { - out << tmp; - out << "\n"; diff --git a/monotone-1.1-iostream.patch b/monotone-1.1-iostream.patch deleted file mode 100644 index b77a4a0..0000000 --- a/monotone-1.1-iostream.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up monotone-1.1/test/unit/tests/merge_3way.cc\~ monotone-1.1/test/unit/tests/merge_3way.cc ---- monotone-1.1/test/unit/tests/merge_3way.cc~ 2014-05-04 11:15:25.000000000 +0200 -+++ monotone-1.1/test/unit/tests/merge_3way.cc 2015-01-29 02:23:06.774241679 +0100 -@@ -17,6 +17,8 @@ - #include "../randomfile.hh" - #include "../../../src/simplestring_xform.hh" - -+#include -+ - using std::cerr; - using std::cout; - using std::stringstream; - -Diff finished. Thu Jan 29 02:24:29 2015 diff --git a/monotone-1.1-lua-integer.patch b/monotone-1.1-lua-integer.patch deleted file mode 100644 index ba0dbb4..0000000 --- a/monotone-1.1-lua-integer.patch +++ /dev/null @@ -1,52 +0,0 @@ -diff -Naur monotone-1.1.orig/src/lua.cc monotone-1.1/src/lua.cc ---- monotone-1.1.orig/src/lua.cc 2014-05-04 11:15:17.000000000 +0200 -+++ monotone-1.1/src/lua.cc 2015-06-21 16:47:12.753916549 +0200 -@@ -334,7 +334,7 @@ - { - if (failed) return *this; - if (!check_stack(1)) return *this; -- lua_pushnumber(st, num); -+ lua_pushinteger(st, num); - return *this; - } - -diff -Naur monotone-1.1.orig/src/luaext_platform.cc monotone-1.1/src/luaext_platform.cc ---- monotone-1.1.orig/src/luaext_platform.cc 2014-05-04 11:15:17.000000000 +0200 -+++ monotone-1.1/src/luaext_platform.cc 2015-06-21 15:16:42.455792643 +0200 -@@ -185,8 +185,8 @@ - int res; - int ret; - ret = process_wait(pid, &res); -- lua_pushnumber(LS, res); -- lua_pushnumber(LS, ret); -+ lua_pushinteger(LS, res); -+ lua_pushinteger(LS, ret); - return 2; - } - -diff -Naur monotone-1.1.orig/test/src/tester.cc monotone-1.1/test/src/tester.cc ---- monotone-1.1.orig/test/src/tester.cc 2014-05-04 11:15:25.000000000 +0200 -+++ monotone-1.1/test/src/tester.cc 2015-06-21 15:16:42.491792237 +0200 -@@ -418,8 +418,8 @@ - int res; - int ret; - ret = process_wait(pid, &res, time); -- lua_pushnumber(LS, res); -- lua_pushnumber(LS, ret); -+ lua_pushinteger(LS, res); -+ lua_pushinteger(LS, ret); - return 2; - } - -diff -Naur monotone-1.1.orig/test/src/testlib.lua monotone-1.1/test/src/testlib.lua ---- monotone-1.1.orig/test/src/testlib.lua 2014-05-04 11:15:25.000000000 +0200 -+++ monotone-1.1/test/src/testlib.lua 2015-06-21 16:11:08.180222890 +0200 -@@ -1070,7 +1071,7 @@ - counts.total = counts.total + 1 - local format_seconds = function (seconds) - return string.format("%d:%02d", -- seconds / 60, -+ math.floor(seconds / 60), - seconds % 60) - end - local times = "" diff --git a/monotone-1.1-lua-ql.patch b/monotone-1.1-lua-ql.patch deleted file mode 100644 index 743f0c8..0000000 --- a/monotone-1.1-lua-ql.patch +++ /dev/null @@ -1,15 +0,0 @@ -The LUA_QL macro was removed in lua 5.4.0. Make the same transformation -as was made in the lua code itself. - -diff -up monotone-1.1/src/lua_hooks.cc.orig monotone-1.1/src/lua_hooks.cc ---- monotone-1.1/src/lua_hooks.cc.orig 2014-05-04 03:15:17.000000000 -0600 -+++ monotone-1.1/src/lua_hooks.cc 2020-06-30 10:22:58.480017092 -0600 -@@ -90,7 +90,7 @@ extern "C" - s = lua_tostring(LS, -1); - if (s == NULL) - return luaL_error( -- LS, LUA_QL("tostring") " must return a string to ", LUA_QL("print") -+ LS, "'tostring' must return a string to 'print'" - ); - - if (i > 1) diff --git a/monotone-1.1-pcre.patch b/monotone-1.1-pcre.patch deleted file mode 100644 index 1ecda43..0000000 --- a/monotone-1.1-pcre.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 70f209ad582121750d54e3692b1e62c7f36af6f9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= -Date: Mon, 7 May 2018 14:09:06 +0200 -Subject: [PATCH] Adapt to changes in pcre-8.42 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -pcre-8.42 replaced internal real_pcre with real_pcre8_or_16. This -broke monotone that decided not to use the public "pcre" type. - -This patch adapts monotone to the pcre >= 8.42. - -Signed-off-by: Petr Písař ---- - src/pcrewrap.cc | 4 ++-- - src/pcrewrap.hh | 4 ++-- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/pcrewrap.cc b/src/pcrewrap.cc -index 8c0c9d1..30bafff 100644 ---- a/src/pcrewrap.cc -+++ b/src/pcrewrap.cc -@@ -74,7 +74,7 @@ get_capturecount(void const * bd) - namespace pcre - { - typedef map > -+ pair > - regex_cache; - - class regex_cache_manager -@@ -86,7 +86,7 @@ public: - } - - void store(char const * pattern, -- pair -+ pair - data) - { - cache[pattern] = data; -diff --git a/src/pcrewrap.hh b/src/pcrewrap.hh -index 3359cdd..5008e88 100644 ---- a/src/pcrewrap.hh -+++ b/src/pcrewrap.hh -@@ -18,7 +18,7 @@ - // definitions and so we don't actually expose it here. Unfortunately, this - // means we have to hope this pair of forward declarations will not change... - --struct real_pcre; -+struct real_pcre8_or_16; - struct pcre_extra; - - namespace pcre -@@ -61,7 +61,7 @@ namespace pcre - regex & operator=(regex const &); - - // data -- struct real_pcre const * basedat; -+ struct real_pcre8_or_16 const * basedat; - struct pcre_extra const * extradat; - - // used by constructors --- -2.14.3 - diff --git a/monotone-1.1-py3.patch b/monotone-1.1-py3.patch deleted file mode 100644 index b8eb22e..0000000 --- a/monotone-1.1-py3.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up monotone-1.1/extra/mtn-hooks/monotone-ciabot.py.orig monotone-1.1/extra/mtn-hooks/monotone-ciabot.py ---- monotone-1.1/extra/mtn-hooks/monotone-ciabot.py.orig 2019-08-10 09:00:03.203454091 +0200 -+++ monotone-1.1/extra/mtn-hooks/monotone-ciabot.py 2019-08-10 09:07:13.873700583 +0200 -@@ -1,4 +1,4 @@ --#!/usr/bin/env python -+#!/usr/bin/env python3 - # - # Copyright (C) Nathaniel Smith - # Timothy Brownawell -@@ -192,10 +192,10 @@ def escape_for_xml(text, is_attrib=0): - - def send_message(message, c): - if c.delivery == "debug": -- print message -+ print(message) - elif c.delivery == "xmlrpc": -- import xmlrpclib -- xmlrpclib.ServerProxy(c.xmlrpc_server).hub.deliver(message) -+ import xmlrpc.client -+ xmlrpc.client.ServerProxy(c.xmlrpc_server).hub.deliver(message) - elif c.delivery == "email": - import smtplib - smtp = smtplib.SMTP(c.smtp_server) diff --git a/monotone-1.1-string-overflow.patch b/monotone-1.1-string-overflow.patch deleted file mode 100644 index 892236f..0000000 --- a/monotone-1.1-string-overflow.patch +++ /dev/null @@ -1,28 +0,0 @@ -Ensure that the string in SSH_AUTH_SOCK is not too large to fit in a Unix -sockaddr, and only copy the bytes of the supplied string. The original code -goes on to copy bytes beyond the end of the string. - ---- monotone-1.1/src/unix/ssh_agent_platform.cc.orig 2014-05-04 03:15:18.000000000 -0600 -+++ monotone-1.1/src/unix/ssh_agent_platform.cc 2020-06-30 12:25:54.068518536 -0600 -@@ -35,8 +35,9 @@ static int - connect_to_agent() - { - const char *authsocket = getenv("SSH_AUTH_SOCK"); -+ struct sockaddr_un addr; - -- if (!authsocket || !*authsocket) -+ if (!authsocket || !*authsocket || strlen(authsocket) >= sizeof(addr.sun_path)) - { - L(FL("ssh_agent: no agent")); - return -1; -@@ -57,9 +58,8 @@ connect_to_agent() - return -1; - } - -- struct sockaddr_un addr; - addr.sun_family = AF_UNIX; -- strncpy(addr.sun_path, authsocket, sizeof(addr.sun_path)); -+ strcpy(addr.sun_path, authsocket); - - if (::connect(sock, (struct sockaddr *)&addr, sizeof addr)) - { diff --git a/monotone-server-genkey b/monotone-server-genkey deleted file mode 100755 index 091760c..0000000 --- a/monotone-server-genkey +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/sh -# -# Generate a new private server key for the Monotone Server, if needed -# -# Author: Thomas Moschny -# -set -eu - -MONOTONE_CONFDIR="${MONOTONE_CONFDIR:-/etc/monotone}" -MONOTONE_KEYDIR="${MONOTONE_KEYDIR:-/etc/monotone/private-keys}" -MONOTONE_DBFILE="${MONOTONE_DBFILE:-/var/lib/monotone/server.mtn}" -MONOTONE_PPFILE="${MONOTONE_PPFILE:-/etc/monotone/passphrase.lua}" - -MONOTONE_KEYID="${MONOTONE_KEYID:-monotone@$(hostname -f)}" -MONOTONE_HOME="${MONOTONE_HOME:-/var/lib/monotone}" - -cd "${MONOTONE_HOME}" - -# check for existing keys -for key in "${MONOTONE_KEYDIR}/${MONOTONE_KEYID}"* ; do - if [ -e "${key}" ] ; then - echo $"Found private key $key" - exit - fi -done - -# check for existing rc file -if [ -s "${MONOTONE_PPFILE}" ] ; then - echo >&2 $"Not overwriting passphrase file ${MONOTONE_PPFILE}" - exit 1 -fi - -# no key found, let's generate one -echo $"Generating key for server ${MONOTONE_KEYID}" - -# generate random passphrase -passphrase="$(dd 2>/dev/null if=/dev/urandom bs=1 count=16 | hexdump -ve '/1 "%02x"')" - -# generate keypair, needs to be run as root -{ echo "${passphrase}"; echo "${passphrase}" ; } | -mtn --confdir="${MONOTONE_CONFDIR}" --db="${MONOTONE_DBFILE}" \ - --keydir="${MONOTONE_KEYDIR}" --force-duplicate-key \ - genkey "${MONOTONE_KEYID}" - -# fix permissions -for key in "${MONOTONE_KEYDIR}/${MONOTONE_KEYID}"* ; do - if [ -e "${key}" ] ; then - chgrp monotone "${key}" - chmod 0640 "${key}" - break - fi - echo >&2 $"No key found, key generation failed?" - exit 1 -done - -# generate rc file -install -o root -g monotone -m 0440 /dev/null "${MONOTONE_PPFILE}" -cat > "${MONOTONE_PPFILE}" < -# -set -eu - -MONOTONE_CONFDIR="${MONOTONE_CONFDIR:-/etc/monotone}" -MONOTONE_KEYDIR="${MONOTONE_KEYDIR:-/etc/monotone/private-keys}" -MONOTONE_DBFILE="${MONOTONE_DBFILE:-/var/lib/monotone/server.mtn}" -MONOTONE_PPFILE="${MONOTONE_PPFILE:-/etc/monotone/passphrase.lua}" - -MONOTONE_KEYID="${MONOTONE_KEYID:-monotone@$(hostname -f)}" -MONOTONE_HOME="${MONOTONE_HOME:-/var/lib/monotone}" - -cd "${MONOTONE_HOME}" - -echo $"Importing packets into ${MONOTONE_DBFILE}" - -runuser -u monotone -- mtn --confdir="${MONOTONE_CONFDIR}" \ - --db="${MONOTONE_DBFILE}" --keydir="${MONOTONE_KEYDIR}" \ - read diff --git a/monotone-server-initdb b/monotone-server-initdb deleted file mode 100755 index 90d061a..0000000 --- a/monotone-server-initdb +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh -# -# Initialize a new database for the Monotone Server, if needed -# -# Author: Thomas Moschny -# -set -eu - -MONOTONE_CONFDIR="${MONOTONE_CONFDIR:-/etc/monotone}" -MONOTONE_KEYDIR="${MONOTONE_KEYDIR:-/etc/monotone/private-keys}" -MONOTONE_DBFILE="${MONOTONE_DBFILE:-/var/lib/monotone/server.mtn}" -MONOTONE_PPFILE="${MONOTONE_PPFILE:-/etc/monotone/passphrase.lua}" - -MONOTONE_KEYID="${MONOTONE_KEYID:-monotone@$(hostname -f)}" -MONOTONE_HOME="${MONOTONE_HOME:-/var/lib/monotone}" - -cd "${MONOTONE_HOME}" - -# check for existing database -if [ -s "${MONOTONE_DBFILE}" ] ; then - echo $"Found database ${MONOTONE_DBFILE}" - exit -fi - -# no db found -echo $"Creating dababase ${MONOTONE_DBFILE}" - -# create database -runuser -u monotone -- mtn --confdir="${MONOTONE_CONFDIR}" \ - --db="${MONOTONE_DBFILE}" --keydir="${MONOTONE_KEYDIR}" \ - db init - -# fix permissions -chmod 0640 "${MONOTONE_DBFILE}" diff --git a/monotone-server-migratedb b/monotone-server-migratedb deleted file mode 100755 index fffac2c..0000000 --- a/monotone-server-migratedb +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/sh -# -# Migrate the Monotone Server database, if needed -# -# Author: Thomas Moschny -# -set -eu - -MONOTONE_CONFDIR="${MONOTONE_CONFDIR:-/etc/monotone}" -MONOTONE_KEYDIR="${MONOTONE_KEYDIR:-/etc/monotone/private-keys}" -MONOTONE_DBFILE="${MONOTONE_DBFILE:-/var/lib/monotone/server.mtn}" -MONOTONE_PPFILE="${MONOTONE_PPFILE:-/etc/monotone/passphrase.lua}" - -MONOTONE_KEYID="${MONOTONE_KEYID:-monotone@$(hostname -f)}" -MONOTONE_HOME="${MONOTONE_HOME:-/var/lib/monotone}" - -cd "${MONOTONE_HOME}" - -# check database -version="$(LC_ALL=C runuser -u monotone -- mtn \ - --confdir="${MONOTONE_CONFDIR}" --db="${MONOTONE_DBFILE}" \ - --keydir="${MONOTONE_KEYDIR}" db version)" - -case ${version} in - *"("usable")"*) - echo $"Database is usable" - exit - ;; -esac - -# database needs migration -echo $"Migrating dababase ${MONOTONE_DBFILE}" - -# migrate database -runuser -u monotone -- mtn --confdir="${MONOTONE_CONFDIR}" \ - --db="${MONOTONE_DBFILE}" --keydir="${MONOTONE_KEYDIR}" \ - db migrate - -runuser -u monotone -- mtn --confdir="${MONOTONE_CONFDIR}" \ - --db="${MONOTONE_DBFILE}" --keydir="${MONOTONE_KEYDIR}" \ - db regenerate_caches diff --git a/monotone-server-sysusers.conf b/monotone-server-sysusers.conf deleted file mode 100644 index deb48d3..0000000 --- a/monotone-server-sysusers.conf +++ /dev/null @@ -1,2 +0,0 @@ -#Type Name ID GECOS Home directory Shell -u monotone - "Monotone Netsync Server" /var/lib/monotone diff --git a/monotone.init b/monotone.init new file mode 100644 index 0000000..967ab15 --- /dev/null +++ b/monotone.init @@ -0,0 +1,231 @@ +#!/bin/sh +# +# This script starts and stops the monotone server. +# +# chkconfig: - 90 10 +# description: Monotone netsync protocol server +# processname: monotone-server +# pidfile: /var/run/monotone/monotone-server.pid +# config: /etc/sysconfig/monotone +# config: /etc/monotone/monotonerc +# +### BEGIN INIT INFO +# Provides: monotone +# Required-Start: $local_fs $network $named $time +# Required-Stop: $local_fs $network +# Short-Description: start and stop Monotone netsync protocol server +# Description: Monotone is a free, distributed version control system. +# It provides fully disconnected operation, manages complete +# tree versions, keeps its state in a local transactional +# database, supports overlapping branches and extensible +# metadata, exchanges work over plain network protocols, +# performs history-sensitive merging, and delegates trust +# functions to client-side RSA certificates. +### END INIT INFO + +# Source function library. +. /etc/rc.d/init.d/functions + +# Source networking configuration. +. /etc/sysconfig/network + +# Check that networking is up. +[ ${NETWORKING} = "no" ] && exit 0 + +# Get configuration settings. +[ -f /etc/sysconfig/monotone ] && . /etc/sysconfig/monotone + +# By default it's all good +RETVAL=0 + +MT=/usr/bin/mtn +MTSERVER=/usr/sbin/monotone-server +MONOTONE_PIDFILE=/var/run/monotone/monotone-server.pid +MONOTONE_LOGFILE=${MONOTONE_LOGFILE:-/var/log/monotone.log} +MONOTONE_OLDDB=/var/db/monotone/server.db +MONOTONE_OLDDBFILE=/var/db/monotone/server.mtn +MONOTONE_OLDPPFILE=/var/db/monotone/passphrase.lua + +random_passphrase() +{ + # As of 0.22, 32 chars is the maximum pass phrase length. + dd if=/dev/urandom bs=32 count=1 2> /dev/null | md5sum | + { read sum rest; echo $sum; } +} + +umask 077 + +check_db_version() +{ + db_version=`runuser -s /bin/bash - ${MONOTONE_USER:-monotone} \ + -c "LC_ALL=C \ + $MT $MONOTONE_RCOPTS $MONOTONE_DBOPTS \ + db version"` || exit 2 + set -- $db_version + [ "$5" == "(usable)" ] + return $? +} + +# See how we were called. +case "$1" in + start) + if [ -e $MONOTONE_OLDDBFILE -a ! -e $MONOTONE_DBFILE ]; then + echo -n $"Moving" "$MONOTONE_OLDDBFILE" $"to" "$MONOTONE_DBFILE" + if mv "$MONOTONE_OLDDBFILE" "$MONOTONE_DBFILE"; then + failure + echo + exit + else + success + echo + fi + rmdir 2> /dev/null /var/db/monotone + fi + if [ -e $MONOTONE_DBFILE ]; then + check_db_version || $0 migrate + elif [ -e $MONOTONE_OLDDB ]; then + echo -n $"Pre-0.26 monotone database must be migrated by hand: " + failure + echo + false + else + $0 init + fi + RETVAL=$? + if [ $RETVAL = 0 ] && [ "x`ls $MONOTONE_KEYDIR`" = x ]; then + $0 genkey + RETVAL=$? + fi + if [ $RETVAL = 0 ]; then + # Start daemon. + echo -n $"Starting monotone server: " + { + exec 3>> $MONOTONE_LOGFILE && + echo >&3 "Server restart at `date`" && + daemon --user=${MONOTONE_USER:-monotone} \ + --pidfile $MONOTONE_PIDFILE \ + $MTSERVER \ + $MONOTONE_RCOPTS $MONOTONE_DBOPTS $MONOTONE_PPOPTS \ + serve --pid-file=$MONOTONE_PIDFILE \ + "$MONOTONE_SERVE_OPTS" ">&3 2>&3 &" + } && success || failure + RETVAL=$? + echo + fi + [ $RETVAL = 0 ] && touch /var/lock/subsys/monotone + ;; + stop) + # Stop daemons. + echo -n $"Stopping monotone server: " + killproc -p $MONOTONE_PIDFILE $MTSERVER + RETVAL=$? + rm -f $MONOTONE_PIDFILE + [ $RETVAL = 0 ] && rm -f /var/lock/subsys/monotone + echo + ;; + restart|force-reload) + $0 stop + $0 start + ;; + condrestart|try-restart) + [ -e /var/lock/subsys/monotone ] && $0 restart + ;; + status) + status -p $MONOTONE_PIDFILE monotone-server + RETVAL=$? + ;; + init) + echo -n $"Initializing database" "${MONOTONE_DBFILE}: " + { [ -d /var/lib/monotone ] || + /usr/bin/install -o ${MONOTONE_USER:-monotone} \ + -g ${MONOTONE_GROUP:-monotone} \ + -m 0770 -d /var/lib/monotone; } && + runuser -s /bin/bash - ${MONOTONE_USER:-monotone} -c "umask 007; \ + $MT $MONOTONE_RCOPTS $MONOTONE_DBOPTS db init" && + success $"database initialization" || + failure $"database initialization" + RETVAL=$? + echo + ;; + genkey) + MONOTONE_KEYID=${2:-${MONOTONE_KEYID:-monotone@`/bin/hostname -f`}} + MONOTONE_PPFILE=${MONOTONE_PPFILE:-/etc/monotone/passphrase.lua} + if [ -s "$MONOTONE_PPFILE" -a -s "$MONOTONE_KEYDIR/$MONOTONE_KEYID" ] + then + echo >&2 "$0:" $"Server key already installed" + echo >&2 "$0:" $"To lose old key remove file" "$MONOTONE_PPFILE" + exit 1 + fi + echo -n $"Generating RSA key for server $MONOTONE_KEYID" + tmp=/tmp/mtserver$$ + if + passphrase=`random_passphrase` && + { echo $passphrase; echo $passphrase; } | + (umask 027; $MT $MONOTONE_RCOPTS $MONOTONE_DBOPTS \ + genkey $MONOTONE_KEYID > /dev/null 2>&1) && + /bin/chgrp ${MONOTONE_GROUP:-monotone} \ + "$MONOTONE_KEYDIR/$MONOTONE_KEYID" && + /bin/chmod 0640 "$MONOTONE_KEYDIR/$MONOTONE_KEYID" && + cat > $tmp <= 1.33.1 BuildRequires: botan-devel >= 1.6.3 @@ -34,15 +25,11 @@ BuildRequires: pcre-devel >= 7.4 BuildRequires: sqlite-devel >= 3.3.8 BuildRequires: lua-devel >= 5.1 BuildRequires: libidn-devel -BuildRequires: systemd -BuildRequires: systemd-rpm-macros -%{?sysusers_requires_compat} - # Required by the test suite: BuildRequires: cvs BuildRequires: bash-completion -BuildRequires: expect - +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info # Filter unwanted dependencies %{?perl_default_filter} @@ -61,9 +48,10 @@ functions to client-side RSA certificates. Summary: Standalone server setup for monotone Requires: monotone = %{version}-%{release} Requires(pre): shadow-utils -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd +Requires(post): chkconfig +Requires(preun): initscripts, chkconfig +Requires(postun): initscripts +Group: Development/Tools %description server @@ -73,6 +61,8 @@ This package provides an easy-to-use standalone server setup for monotone. %package -n perl-Monotone Summary: Perl Module for monotone Requires: monotone = %{version}-%{release} +Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) +Group: Development/Tools %description -n perl-Monotone @@ -81,25 +71,26 @@ and then pass commands to it. %prep -%autosetup -p1 +%setup -q +%patch0 -p0 +%patch1 -p0 +%patch2 -p1 %build export LC_MESSAGES=en_US %configure -%make_build +make %{?_smp_mflags} %check -#export LC_MESSAGES=en_US -#export DISABLE_NETWORK_TESTS=1 -#export MTN_STACKTRACE_ON_CRASH=1 -#make check || { head -n-0 test/work/*.log; false; } +export DISABLE_NETWORK_TESTS=1 +make %{?_smp_mflags} check || { head -n-0 test/work/*.log; false; } %install -export LC_MESSAGES=en_US -%make_install +rm -rf %{buildroot} +make install DESTDIR=%{buildroot} rm -f %{buildroot}%{_infodir}/dir mv %{buildroot}%{_datadir}/doc/%{name} _doc @@ -109,20 +100,17 @@ mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_localstatedir}/lib ln -snf ../bin/mtn %{buildroot}%{_sbindir}/monotone-server ln -snf mtn.1 %{buildroot}%{_mandir}/man1/monotone-server.1 -install -D -m 0644 -p %{SOURCE1} %{buildroot}%{_unitdir}/monotone.service - +install -D -m 0755 -p %{SOURCE1} \ + %{buildroot}%{_sysconfdir}/rc.d/init.d/monotone install -D -m 0644 -p %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/monotone install -d -m 0755 %{buildroot}%{_sysconfdir}/monotone install -d -m 0750 %{buildroot}%{_sysconfdir}/monotone/private-keys install -d -m 0770 %{buildroot}%{_localstatedir}/lib/monotone install -d -m 0755 %{buildroot}%{_localstatedir}/run/monotone +%if 0%{?fedora} >= 15 install -D -m 0644 %{SOURCE4} \ - %{buildroot}%{_tmpfilesdir}/monotone.conf - -install -D -m 0755 -p %{SOURCE5} %{buildroot}%{_libexecdir}/monotone-server-initdb -install -D -m 0755 -p %{SOURCE6} %{buildroot}%{_libexecdir}/monotone-server-migratedb -install -D -m 0755 -p %{SOURCE7} %{buildroot}%{_libexecdir}/monotone-server-genkey -install -D -m 0755 -p %{SOURCE8} %{buildroot}%{_libexecdir}/monotone-server-import + %{buildroot}%{_sysconfdir}/tmpfiles.d/monotone.conf +%endif # These do not actually wind up in the package, due to %%ghost. install -m 0440 /dev/null \ @@ -141,24 +129,35 @@ install -m 0644 -p %{SOURCE3} . install -D -m 0644 -p contrib/Monotone.pm \ %{buildroot}%{perl_vendorlib}/Monotone.pm -mkdir -p %{buildroot}%{_datadir}/bash-completion/completions -mv %{buildroot}%{_sysconfdir}/bash_completion.d/monotone.bash_completion \ - %{buildroot}%{_datadir}/bash-completion/completions/%{name}.bash_completion -install -p -D -m 0644 %{SOURCE9} %{buildroot}%{_sysusersdir}/monotone-server.conf +%clean +rm -f README.monotone-server +rm -rf %{buildroot} + + +%post +if [ $1 -eq 1 ] +then + /sbin/install-info %{_infodir}/monotone.info %{_infodir}/dir > /dev/null 2>&1 || : +fi + + +%preun +if [ $1 -eq 0 ] +then + /sbin/install-info --delete %{_infodir}/monotone.info %{_infodir}/dir > /dev/null 2>&1 || : +fi %files -f %{name}.lang -%doc AUTHORS NEWS README UPGRADE +%defattr(-,root,root,-) +%doc AUTHORS COPYING NEWS README UPGRADE %doc _doc/* -%license COPYING %{_bindir}/mtn %{_bindir}/mtnopt %{_bindir}/mtn-cleanup %{_infodir}/monotone.info* -%dir %{_datadir}/bash-completion -%dir %{_datadir}/bash-completion/completions -%{_datadir}/bash-completion/completions/%{name}.bash_completion +%{_sysconfdir}/bash_completion.d %{_mandir}/man1/mtn.1* %{_mandir}/man1/mtnopt.1* %{_mandir}/man1/mtn-cleanup.1* @@ -166,20 +165,21 @@ install -p -D -m 0644 %{SOURCE9} %{buildroot}%{_sysusersdir}/monotone-server.con %files -n perl-Monotone +%defattr(-,root,root,-) %{perl_vendorlib}/Monotone.pm %files server +%defattr(-,root,root,-) %doc README.monotone-server %{_sbindir}/monotone-server %{_mandir}/man1/monotone-server.1* -%{_unitdir}/monotone.service -%{_libexecdir}/monotone-server-initdb -%{_libexecdir}/monotone-server-migratedb -%{_libexecdir}/monotone-server-genkey -%{_libexecdir}/monotone-server-import +%{_sysconfdir}/rc.d/init.d/monotone %dir %attr(0755,monotone,monotone) %{_localstatedir}/run/monotone -%{_tmpfilesdir}/monotone.conf +%if 0%{?fedora} >= 15 +# https://fedoraproject.org/wiki/Packaging:Tmpfiles.d +%config(noreplace) %{_sysconfdir}/tmpfiles.d/monotone.conf +%endif %config(noreplace) %{_sysconfdir}/sysconfig/monotone %dir %attr(0755,root,monotone) %{_sysconfdir}/monotone %dir %attr(0750,root,monotone) %{_sysconfdir}/monotone/private-keys @@ -189,238 +189,37 @@ install -p -D -m 0644 %{SOURCE9} %{buildroot}%{_sysusersdir}/monotone-server.con %attr(0640,root,monotone) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) %{_sysconfdir}/monotone/write-permissions %dir %attr(0770,monotone,monotone) %{_localstatedir}/lib/monotone %attr(0660,monotone,monotone) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) %{_localstatedir}/lib/monotone/server.mtn -%{_sysusersdir}/monotone-server.conf %pre server -%sysusers_create_compat %{SOURCE9} +# Add "monotone" user per http://fedoraproject.org/wiki/Packaging/UsersAndGroups +getent group monotone > /dev/null || groupadd -r monotone +getent passwd monotone > /dev/null || +useradd -r -g monotone -r -d %{_localstatedir}/lib/monotone -s /sbin/nologin \ + -c "Monotone Netsync Server" monotone +exit 0 %post server -%systemd_post monotone.service +# Register the monotone service +/sbin/chkconfig --add monotone %preun server -%systemd_preun monotone.service +if [ $1 -eq 0 ]; then + /sbin/service monotone stop > /dev/null 2>&1 + /sbin/chkconfig --del monotone +fi %postun server -%systemd_postun monotone.service +if [ $1 -ge 1 ]; then + # Restart the running server: updates its db format when needed. + /sbin/service monotone condrestart > /dev/null 2>&1 || : +fi %changelog -* Thu Aug 28 2025 Thomas Moschny - 1.1-53 -- Update for current users and groups guidelines. - -* Thu Jul 24 2025 Fedora Release Engineering - 1.1-52 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Fri Jan 17 2025 Fedora Release Engineering - 1.1-51 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Fri Jul 26 2024 Miroslav Suchý - 1.1-50 -- convert license to SPDX - -* Thu Jul 18 2024 Fedora Release Engineering - 1.1-49 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Thu Jan 25 2024 Fedora Release Engineering - 1.1-48 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 1.1-47 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Jul 20 2023 Fedora Release Engineering - 1.1-46 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jan 19 2023 Fedora Release Engineering - 1.1-45 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Jul 21 2022 Fedora Release Engineering - 1.1-44 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Mon May 30 2022 Jitka Plesnikova - 1.1-43 -- Perl 5.36 rebuild - -* Thu Jan 20 2022 Fedora Release Engineering - 1.1-42 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Jul 22 2021 Fedora Release Engineering - 1.1-41 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Fri May 21 2021 Jitka Plesnikova - 1.1-40 -- Perl 5.34 rebuild - -* Mon Feb 8 2021 Thomas Moschny - 1.1-39 -- Move bash completions to /usr/share/bash-completion/completions (bz#1855768). - -* Tue Jan 26 2021 Fedora Release Engineering - 1.1-38 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Aug 01 2020 Fedora Release Engineering - 1.1-37 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 1.1-36 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jun 30 2020 Jerry James - 1.1-35 -- Add lua-ql patch due to removal of LUA_QL from lua -- Add boost patch to fix single-letter macro name clash (bz 1851313) -- Add string-overflow patch to fix a potential buffer overflow -- Add catch patch to silence a large number of compiler warnings - -* Mon Jun 22 2020 Jitka Plesnikova - 1.1-35 -- Perl 5.32 rebuild - -* Wed Jan 29 2020 Fedora Release Engineering - 1.1-34 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Sat Aug 10 2019 Thomas Moschny - 1.1-33 -- Patch extra/mtn-hooks/monotone-ciabot.py to use Python3 (bz#1738073). - -* Thu Jul 25 2019 Fedora Release Engineering - 1.1-32 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu May 30 2019 Jitka Plesnikova - 1.1-31 -- Perl 5.30 rebuild - -* Sat Feb 9 2019 Thomas Moschny - 1.1-30 -- Fix F30 FTBFS. - -* Fri Feb 01 2019 Fedora Release Engineering - 1.1-29 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jul 13 2018 Fedora Release Engineering - 1.1-28 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Jun 27 2018 Jitka Plesnikova - 1.1-27 -- Perl 5.28 rebuild - -* Tue May 22 2018 Thomas Moschny - 1.1-26 -- Add patch for PCRE >= 8.42 (rhbz#1555231, thanks P. Pisar). - -* Thu Feb 08 2018 Fedora Release Engineering - 1.1-25 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Thu Aug 03 2017 Fedora Release Engineering - 1.1-24 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1.1-23 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Sun Jun 04 2017 Jitka Plesnikova - 1.1-22 -- Perl 5.26 rebuild - -* Mon May 15 2017 Fedora Release Engineering - 1.1-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild - -* Fri Feb 10 2017 Fedora Release Engineering - 1.1-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Fri Jan 27 2017 Jonathan Wakely - 1.1-19 -- Rebuilt for Boost 1.63 - -* Fri Jan 27 2017 Jonathan Wakely - 1.1-18 -- Rebuilt for Boost 1.63 - -* Sat Jan 14 2017 Ville Skyttä - 1.1-17 -- Move tmpfiles.d config to %%{_tmpfilesdir} - -* Sun May 15 2016 Jitka Plesnikova - 1.1-15 -- Perl 5.24 rebuild - -* Sun Feb 14 2016 Thomas Moschny - 1.1-14 -- Switch monotone-server to systemd (#789901). -- Mark COPYING as %%license. -- Do not own /etc/bash_completion.d. -- Update README.monotone-server. - -* Mon Feb 8 2016 Thomas Moschny - 1.1-13 -- Rebuild for Botan 1.10.12. - -* Thu Feb 04 2016 Fedora Release Engineering - 1.1-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jan 15 2016 Jonathan Wakely - 1.1-11 -- Rebuilt for Boost 1.60 - -* Thu Aug 27 2015 Jonathan Wakely - 1.1-10 -- Rebuilt for Boost 1.59 - -* Wed Jul 29 2015 Fedora Release Engineering - 1.1-9 -- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 - -* Wed Jul 22 2015 David Tardon - 1.1-8 -- rebuild for Boost 1.58 - -* Mon Jun 22 2015 Thomas Moschny - 1.1-7 -- Add patch to fix FTBFS with Lua 5.3 (rhbz#1185790). - -* Wed Jun 17 2015 Fedora Release Engineering - 1.1-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sat Jun 06 2015 Jitka Plesnikova - 1.1-5 -- Perl 5.22 rebuild - -* Thu Jan 29 2015 Petr Machata - 1.1-4 -- Rebuild for boost 1.57.0 -- Include in tests/merge_3way.cc - (monotone-1.1-iostream.patch) - -* Tue Aug 26 2014 Jitka Plesnikova - 1.1-3 -- Perl 5.20 rebuild - -* Sun Aug 17 2014 Fedora Release Engineering - 1.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Fri Jul 18 2014 Thomas Moschny - 1.1-1 -- Update to 1.1. -- Remove patches and fixes not needed anymore. -- Modernize spec file. - -* Sat Jun 07 2014 Fedora Release Engineering - 1.0-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Fri May 23 2014 Petr Machata - 1.0-16 -- Rebuild for boost 1.55.0 - -* Tue Oct 8 2013 Thomas Moschny - 1.0-15 -- Add patches for building with Botan 1.10, Lua 5.2, - and Texinfo >= 5.0. - -* Sat Aug 03 2013 Fedora Release Engineering - 1.0-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Tue Jul 30 2013 Petr Machata - 1.0-13 -- Rebuild for boost 1.54.0 - -* Wed Jul 17 2013 Petr Pisar - 1.0-12 -- Perl 5.18 rebuild - -* Sat Mar 9 2013 Thomas Moschny - 1.0-11 -- Fix building against Boost 1.53 (FTBFS bug rhbz#914191). -- Fix failing bash completion test. -- Add patch to temporarily disable a failing check in one test (rhbz#919827). - -* Thu Feb 14 2013 Fedora Release Engineering - 1.0-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Fri Jul 20 2012 Fedora Release Engineering - 1.0-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Fri Jun 08 2012 Petr Pisar - 1.0-8 -- Perl 5.16 rebuild - -* Thu Feb 16 2012 Thomas Moschny - 1.0-7 -- Add patch to fix building with newer pcre. - -* Fri Feb 10 2012 Petr Pisar - 1.0-6 -- Rebuild against PCRE 8.30 - -* Fri Jan 13 2012 Fedora Release Engineering - 1.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - * Mon Sep 26 2011 Dan Horák - 1.0-4 - fix FTBFS due a symbol conflict with boost diff --git a/monotone.sysconfig b/monotone.sysconfig index 8aa8ac9..a61496a 100644 --- a/monotone.sysconfig +++ b/monotone.sysconfig @@ -1,16 +1,10 @@ -# Options for the Monotone DVCS Server -# -# options can be changed here, or (better) within override files in -# /etc/systemd/system/monotone.service.d +MONOTONE_CONFDIR=/etc/monotone +MONOTONE_KEYDIR=/etc/monotone/private-keys +MONOTONE_DBFILE=/var/lib/monotone/server.mtn +MONOTONE_PPFILE=/etc/monotone/passphrase.lua -# --confdir: location of the configuration directory -#MONOTONE_CONFDIR=/etc/monotone +MONOTONE_RCOPTS="--confdir=$MONOTONE_CONFDIR" +MONOTONE_DBOPTS="--db=$MONOTONE_DBFILE --keydir=$MONOTONE_KEYDIR" +MONOTONE_PPOPTS="--rcfile=$MONOTONE_PPFILE" -# --keydir: location of the key store -#MONOTONE_KEYDIR=/etc/monotone/private-keys - -# --db: name of the database file -#MONOTONE_DBFILE=/var/lib/monotone/server.mtn - -# --rcfile: used to pass the passphrase of the server's private key -#MONOTONE_PPFILE=/etc/monotone/passphrase.lua +MONOTONE_SERVE_OPTS="" diff --git a/sources b/sources index b46ef88..b9eb4ad 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -df3f40ca22120aa142ac9becba9e1bf7 monotone-1.1.tar.bz2 +6a0b5d8560f08d76a950172f9ed0feff monotone-1.0.tar.bz2