From 7babc3fe45db645fd9e0c5bac5594fe168c1b7ad Mon Sep 17 00:00:00 2001 From: B Stack Date: Mon, 20 Apr 2020 15:45:42 -0400 Subject: ffs: remove libssl.patch, gtk3 dpkg rc1 --- freefilesync/debian/changelog | 33 +++++++++++++++-- freefilesync/debian/control | 10 +++--- freefilesync/debian/patches/ffs_libssl.patch | 53 ---------------------------- freefilesync/debian/patches/series | 3 +- 4 files changed, 36 insertions(+), 63 deletions(-) delete mode 100644 freefilesync/debian/patches/ffs_libssl.patch (limited to 'freefilesync') diff --git a/freefilesync/debian/changelog b/freefilesync/debian/changelog index ca2a9c5..2360ed2 100644 --- a/freefilesync/debian/changelog +++ b/freefilesync/debian/changelog @@ -1,3 +1,30 @@ +freefilesync (10.23-1+devuan) albion; urgency=medium + + * Run "on completion" commands on console (no need for "cmd.exe /c") + * Check exit code and report errors for external applications + * Report stream output of failed command line calls (macOs, Linux) + * Use Unicode symbols compatible with older macOS + * RealTimeSync: invoke command using cmd.exe instead of ShellExecute (Windows) + * Avoid hitting log file length limitations for aggregated jobs + * Fix OpenSSL failing on HTTP 1.0 response without Content-Length + * Don't allow creating folder names ending with space or dot + * Support base folders with trailing blanks + * Show system error descriptions on volume shadow copy errors + * Raise exit code if saving log file or sending email failed + * Report all documented MTP error descriptions + * Updated default exclude filter (macOS/Linux) + * Added image outlines for improved dark mode support + * Work around WBEM_E_INVALID_CLASS error during installation + * Align file path rendering with app layout direction + * Play sound notification also when "cancel on first error" is set + * Cleaner file path formatting (macOs, Linux) + * Added instructions when failing to start due to missing GTK2 (Ubuntu) + * RealTimeSync: distinguish drive unmount from folder change notification + * Avoid blocking command scripts waiting for user input + * Updated translation files + + -- Ben Stack Mon, 20 Apr 2020 15:09:48 -0400 + freefilesync (10.22-2+devuan) albion; urgency=medium * gtk2 build @@ -109,7 +136,7 @@ freefilesync (10.17-1+devuan) obs; urgency=low * Integrate latest libcurl FTP bug fixes * Detect common invalid SFTP key file formats * Fixed startup crash caused by corrupted HDD properties - * Allow SFTP access via Ed25519 key in PKIX format + * Allow SFTP access via Ed25519 key in PKIX format -- B Stack Tue, 22 Oct 2019 10:04:13 -0400 @@ -132,7 +159,7 @@ freefilesync (10.16-1+devuan) obs; urgency=low * Fixed accessibility issue with progress graph colors * Use short naming convention when deleting abandoned folder lock * Detect endless folder lock recursion on buggy file systems - * Fixed Google Drive parsing error for invalid file time + * Fixed Google Drive parsing error for invalid file time -- B Stack Tue, 16 Sep 2019 10:04:13 -0400 @@ -148,7 +175,7 @@ freefilesync (10.15-1+devuan) obs; urgency=low * Fixed main dialog out-of-screen position on startup (macOS) * Activated CDN for all web accesses * Redirect error dialog to stderr during sound playback (Linux) - * Updated translation files + * Updated translation files -- B Stack Thu, 15 Aug 2019 21:56:04 -0400 diff --git a/freefilesync/debian/control b/freefilesync/debian/control index 748d6fc..3c93cea 100644 --- a/freefilesync/debian/control +++ b/freefilesync/debian/control @@ -11,13 +11,13 @@ Build-Depends: debhelper (>=12~), unzip, # gtk2 version, now possible only with local devuan-archive, and these must be removed for gtk3 build # install with sudo apt-get install libwxbase3.0-0v5=3.0.4+dfsg-14 libwxbase3.0-dev=3.0.4+dfsg-14 libwxgtk3.0-0v5=3.0.4+dfsg-14 libwxgtk3.0-dev=3.0.4+dfsg-14 wx3.0-headers=3.0.4+dfsg-14 libgtk2.0-dev - libgtk2.0-dev, - libwxgtk3.0-dev (=3.0.4+dfsg-14), +# libgtk2.0-dev, +# libwxgtk3.0-dev (=3.0.4+dfsg-14), # gtk3 version, and these must be removed for gtk2 build -# install with sudo apt-get install libwxbase3.0-dev=3.0.4+dfsg-15 libwxbase3.0-0v5=3.0.4+dfsg-15 wx3.0-headers=3.0.4+dfsg-15 +# install with sudo apt-get install libwxbase3.0-dev=3.0.4+dfsg-15 libwxbase3.0-0v5=3.0.4+dfsg-15 wx3.0-headers=3.0.4+dfsg-15 libgtk-3-dev libwxgtk3.0-gtk3-dev # which will remove libwxbase3.0-dev=3.0.4+dfsg-14 -# libgtk-3-dev, -# libwxgtk3.0-gtk3-dev, + libgtk-3-dev, + libwxgtk3.0-gtk3-dev, Standards-Version: 4.1.4 Homepage: https://freefilesync.org/ diff --git a/freefilesync/debian/patches/ffs_libssl.patch b/freefilesync/debian/patches/ffs_libssl.patch deleted file mode 100644 index 1e043c1..0000000 --- a/freefilesync/debian/patches/ffs_libssl.patch +++ /dev/null @@ -1,53 +0,0 @@ -Author: bgstack15 -Message: Revert freefilesync 10.22 zen/open_ssl.cpp which depends on openssl 1.1.1e which is not available in this distro yet. -Date: 2020-03-18 -diff --git a/zen/open_ssl.cpp b/zen/open_ssl.cpp -index 0f1da3fc..b823f8ca 100644 ---- a/zen/open_ssl.cpp -+++ b/zen/open_ssl.cpp -@@ -18,7 +18,7 @@ using namespace zen; - #error FFS, we are royally screwed! - #endif - --static_assert(OPENSSL_VERSION_NUMBER >= 0x1010105fL, "OpenSSL version too old"); -+static_assert(OPENSSL_VERSION_NUMBER >= 0x10100000L, "OpenSSL version too old"); - - - void zen::openSslInit() -@@ -68,7 +68,7 @@ std::wstring formatOpenSSLError(const std::wstring& functionName, unsigned long - - std::wstring formatLastOpenSSLError(const std::wstring& functionName) - { -- const auto ec = ::ERR_peek_last_error(); -+ const unsigned long ec = ::ERR_peek_last_error(); - ::ERR_clear_error(); //clean up for next OpenSSL operation on this thread - return formatOpenSSLError(functionName, ec); - } -@@ -566,16 +566,9 @@ public: - if (rv != 1) - { - const int sslError = ::SSL_get_error(ssl_, rv); -- if (sslError == SSL_ERROR_ZERO_RETURN) -- return 0; //EOF + close_notify alert -- -- warn_static("find a better solution for SSL_read_ex + EOF") -- //"sslError == SSL_ERROR_SYSCALL && ::ERR_peek_last_error() == 0" => obsolete as of OpenSSL 1.1.1e -- //https://github.com/openssl/openssl/issues/10880#issuecomment-575746226 -- const auto ec = ::ERR_peek_last_error(); -- if (sslError == SSL_ERROR_SSL && ERR_GET_REASON(ec) == SSL_R_UNEXPECTED_EOF_WHILE_READING) //EOF: only expected for HTTP/1.0 -+ if (sslError == SSL_ERROR_ZERO_RETURN || //EOF + close_notify alert -+ (sslError == SSL_ERROR_SYSCALL && ::ERR_peek_last_error() == 0)) //EOF: only expected for HTTP/1.0 - return 0; -- - throw SysError(formatLastOpenSSLError(L"SSL_read_ex") + L' ' + formatSslErrorCode(sslError)); - } - assert(bytesReceived > 0); //SSL_read_ex() considers EOF an error! -@@ -771,7 +764,7 @@ std::string zen::convertPuttyKeyToPkix(const std::string& keyStream, const std:: - - auto numToBeString = [](size_t n) -> std::string - { -- static_assert(usingLittleEndian()&& sizeof(n) >= 4); -+ static_assert(usingLittleEndian() && sizeof(n) >= 4); - const char* numStr = reinterpret_cast(&n); - return { numStr[3], numStr[2], numStr[1], numStr[0] }; //big endian! - }; diff --git a/freefilesync/debian/patches/series b/freefilesync/debian/patches/series index 48d9670..da9adb8 100644 --- a/freefilesync/debian/patches/series +++ b/freefilesync/debian/patches/series @@ -1,10 +1,9 @@ ffs_allow_parallel_ops.patch ffs_devuan.patch # gtk3 for obs, gtk2 for albion -ffs_devuan_gtk2.patch +ffs_devuan_gtk3.patch ffs_no_check_updates.patch ffs_no_wx311.patch ffs_sftp.patch ffs_libssh2.patch ffs_curl.patch -ffs_libssl.patch -- cgit From b1f50adc856787a7742bd0f8f9773656d404dc18 Mon Sep 17 00:00:00 2001 From: B Stack Date: Mon, 20 Apr 2020 15:56:04 -0400 Subject: add libfontconfig-dev for obs --- freefilesync/debian/control | 2 ++ freefilesync/debian/freefilesync+devuan.dsc | 14 ++++++++++++++ freefilesync/debian/freefilesync_devuan.dsc | 14 -------------- 3 files changed, 16 insertions(+), 14 deletions(-) create mode 100644 freefilesync/debian/freefilesync+devuan.dsc delete mode 100644 freefilesync/debian/freefilesync_devuan.dsc (limited to 'freefilesync') diff --git a/freefilesync/debian/control b/freefilesync/debian/control index 3c93cea..8ec23d3 100644 --- a/freefilesync/debian/control +++ b/freefilesync/debian/control @@ -5,6 +5,8 @@ Maintainer: B Stack Build-Depends: debhelper (>=12~), imagemagick, libcurl4-openssl-dev (>=7.68.0), + libfontconfig-dev, +# libfontconfig-dev only added for Debian OBS which is choking as of 2020-04 on libfontconfig-dev | libfontconfig1-dev for deps: libgtk-3-dev, libpango1.0-dev, libcairo2-dev, libxft-dev libssh2-1-dev, libssl-dev, wx3.0-headers, diff --git a/freefilesync/debian/freefilesync+devuan.dsc b/freefilesync/debian/freefilesync+devuan.dsc new file mode 100644 index 0000000..d7a0985 --- /dev/null +++ b/freefilesync/debian/freefilesync+devuan.dsc @@ -0,0 +1,14 @@ +Format: 3.0 (quilt) +Source: freefilesync +Binary: freefilesync +Architecture: any +Version: 10.23-1+devuan +Maintainer: B Stack +Homepage: https://freefilesync.org/ +Standards-Version: 4.1.4 +Build-Depends: debhelper (>= 12~), imagemagick, libcurl4-openssl-dev, libssh2-1-dev, libssl-dev, wx3.0-headers, unzip, libgtk-3-dev, libwxgtk3.0-gtk3-dev, libfontconfig-dev +Package-List: + freefilesync deb utils optional arch=any +Files: + 00000000000000000000000000000000 1 freefilesync0.orig.tar.gz + 00000000000000000000000000000000 1 freefilesync+devuan.debian.tar.xz diff --git a/freefilesync/debian/freefilesync_devuan.dsc b/freefilesync/debian/freefilesync_devuan.dsc deleted file mode 100644 index 4a386e8..0000000 --- a/freefilesync/debian/freefilesync_devuan.dsc +++ /dev/null @@ -1,14 +0,0 @@ -Format: 3.0 (quilt) -Source: freefilesync -Binary: freefilesync -Architecture: any -Version: 10.22-1+devuan -Maintainer: B Stack -Homepage: https://freefilesync.org/ -Standards-Version: 4.1.4 -Build-Depends: debhelper (>= 12~), imagemagick, libcurl4-openssl-dev, libssh2-1-dev, libssl-dev, wx3.0-headers, unzip, libgtk-3-dev, libwxgtk3.0-gtk3-dev -Package-List: - freefilesync deb utils optional arch=any -Files: - 00000000000000000000000000000000 1 freefilesync0.orig.tar.gz - 00000000000000000000000000000000 1 freefilesync+devuan.debian.tar.xz -- cgit From 13acd76e7de687fb4b38d074db99e7762f117947 Mon Sep 17 00:00:00 2001 From: B Stack Date: Mon, 20 Apr 2020 16:17:32 -0400 Subject: freefilesync-10.23-2 dpkg for gtk2 --- freefilesync/debian/changelog | 8 +++++++- freefilesync/debian/control | 8 ++++---- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'freefilesync') diff --git a/freefilesync/debian/changelog b/freefilesync/debian/changelog index 2360ed2..edce1ad 100644 --- a/freefilesync/debian/changelog +++ b/freefilesync/debian/changelog @@ -1,4 +1,10 @@ -freefilesync (10.23-1+devuan) albion; urgency=medium +freefilesync (10.23-2+devuan) albion; urgency=medium + + * gtk2 build + + -- Ben Stack Mon, 20 Apr 2020 16:11:36 -0400 + +freefilesync (10.23-1+devuan) obs; urgency=medium * Run "on completion" commands on console (no need for "cmd.exe /c") * Check exit code and report errors for external applications diff --git a/freefilesync/debian/control b/freefilesync/debian/control index 8ec23d3..7e4df83 100644 --- a/freefilesync/debian/control +++ b/freefilesync/debian/control @@ -13,13 +13,13 @@ Build-Depends: debhelper (>=12~), unzip, # gtk2 version, now possible only with local devuan-archive, and these must be removed for gtk3 build # install with sudo apt-get install libwxbase3.0-0v5=3.0.4+dfsg-14 libwxbase3.0-dev=3.0.4+dfsg-14 libwxgtk3.0-0v5=3.0.4+dfsg-14 libwxgtk3.0-dev=3.0.4+dfsg-14 wx3.0-headers=3.0.4+dfsg-14 libgtk2.0-dev -# libgtk2.0-dev, -# libwxgtk3.0-dev (=3.0.4+dfsg-14), + libgtk2.0-dev, + libwxgtk3.0-dev (=3.0.4+dfsg-14), # gtk3 version, and these must be removed for gtk2 build # install with sudo apt-get install libwxbase3.0-dev=3.0.4+dfsg-15 libwxbase3.0-0v5=3.0.4+dfsg-15 wx3.0-headers=3.0.4+dfsg-15 libgtk-3-dev libwxgtk3.0-gtk3-dev # which will remove libwxbase3.0-dev=3.0.4+dfsg-14 - libgtk-3-dev, - libwxgtk3.0-gtk3-dev, +# libgtk-3-dev, +# libwxgtk3.0-gtk3-dev, Standards-Version: 4.1.4 Homepage: https://freefilesync.org/ -- cgit From 7607dfc5e835858a8622096b9e63ff9074a83284 Mon Sep 17 00:00:00 2001 From: B Stack Date: Mon, 20 Apr 2020 16:37:13 -0400 Subject: actually use gtk2 for dpkg --- freefilesync/debian/patches/series | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'freefilesync') diff --git a/freefilesync/debian/patches/series b/freefilesync/debian/patches/series index da9adb8..2d91735 100644 --- a/freefilesync/debian/patches/series +++ b/freefilesync/debian/patches/series @@ -1,7 +1,7 @@ ffs_allow_parallel_ops.patch ffs_devuan.patch # gtk3 for obs, gtk2 for albion -ffs_devuan_gtk3.patch +ffs_devuan_gtk2.patch ffs_no_check_updates.patch ffs_no_wx311.patch ffs_sftp.patch -- cgit From 31901356ad53511092ecc5909ebffa5e47d9cb24 Mon Sep 17 00:00:00 2001 From: B Stack Date: Tue, 21 Apr 2020 08:36:01 -0400 Subject: ffs 10.23 rpm rc1 --- freefilesync/ffs_libssl.patch | 53 ------------------------------------------ freefilesync/freefilesync.spec | 8 ++++--- 2 files changed, 5 insertions(+), 56 deletions(-) delete mode 100644 freefilesync/ffs_libssl.patch (limited to 'freefilesync') diff --git a/freefilesync/ffs_libssl.patch b/freefilesync/ffs_libssl.patch deleted file mode 100644 index 1e043c1..0000000 --- a/freefilesync/ffs_libssl.patch +++ /dev/null @@ -1,53 +0,0 @@ -Author: bgstack15 -Message: Revert freefilesync 10.22 zen/open_ssl.cpp which depends on openssl 1.1.1e which is not available in this distro yet. -Date: 2020-03-18 -diff --git a/zen/open_ssl.cpp b/zen/open_ssl.cpp -index 0f1da3fc..b823f8ca 100644 ---- a/zen/open_ssl.cpp -+++ b/zen/open_ssl.cpp -@@ -18,7 +18,7 @@ using namespace zen; - #error FFS, we are royally screwed! - #endif - --static_assert(OPENSSL_VERSION_NUMBER >= 0x1010105fL, "OpenSSL version too old"); -+static_assert(OPENSSL_VERSION_NUMBER >= 0x10100000L, "OpenSSL version too old"); - - - void zen::openSslInit() -@@ -68,7 +68,7 @@ std::wstring formatOpenSSLError(const std::wstring& functionName, unsigned long - - std::wstring formatLastOpenSSLError(const std::wstring& functionName) - { -- const auto ec = ::ERR_peek_last_error(); -+ const unsigned long ec = ::ERR_peek_last_error(); - ::ERR_clear_error(); //clean up for next OpenSSL operation on this thread - return formatOpenSSLError(functionName, ec); - } -@@ -566,16 +566,9 @@ public: - if (rv != 1) - { - const int sslError = ::SSL_get_error(ssl_, rv); -- if (sslError == SSL_ERROR_ZERO_RETURN) -- return 0; //EOF + close_notify alert -- -- warn_static("find a better solution for SSL_read_ex + EOF") -- //"sslError == SSL_ERROR_SYSCALL && ::ERR_peek_last_error() == 0" => obsolete as of OpenSSL 1.1.1e -- //https://github.com/openssl/openssl/issues/10880#issuecomment-575746226 -- const auto ec = ::ERR_peek_last_error(); -- if (sslError == SSL_ERROR_SSL && ERR_GET_REASON(ec) == SSL_R_UNEXPECTED_EOF_WHILE_READING) //EOF: only expected for HTTP/1.0 -+ if (sslError == SSL_ERROR_ZERO_RETURN || //EOF + close_notify alert -+ (sslError == SSL_ERROR_SYSCALL && ::ERR_peek_last_error() == 0)) //EOF: only expected for HTTP/1.0 - return 0; -- - throw SysError(formatLastOpenSSLError(L"SSL_read_ex") + L' ' + formatSslErrorCode(sslError)); - } - assert(bytesReceived > 0); //SSL_read_ex() considers EOF an error! -@@ -771,7 +764,7 @@ std::string zen::convertPuttyKeyToPkix(const std::string& keyStream, const std:: - - auto numToBeString = [](size_t n) -> std::string - { -- static_assert(usingLittleEndian()&& sizeof(n) >= 4); -+ static_assert(usingLittleEndian() && sizeof(n) >= 4); - const char* numStr = reinterpret_cast(&n); - return { numStr[3], numStr[2], numStr[1], numStr[0] }; //big endian! - }; diff --git a/freefilesync/freefilesync.spec b/freefilesync/freefilesync.spec index 018b130..6b28b26 100644 --- a/freefilesync/freefilesync.spec +++ b/freefilesync/freefilesync.spec @@ -18,7 +18,7 @@ %define libssh2_name libssh2-%{name} %endif Name: freefilesync -Version: 10.22 +Version: 10.23 Release: 1%{?dist} Summary: A file synchronization utility @@ -41,7 +41,6 @@ Patch6: ffs_libssh2.patch Patch7: ffs_curl.patch Patch8: ffs_bit.patch Patch9: ffs_no_eraseif.patch -Patch10: ffs_libssl.patch Packager: B Stack # WARNING: the build will FAIL if you have wxGTK3-devel installed. Only wxGTK2-devel should be on the build system. @@ -101,7 +100,6 @@ find . ! -type d \( -name '*.c' -o -name '*.cpp' -o -name '*.h' \) \ %patch8 -p1 %patch9 -p1 %endif -%patch10 -p1 # custom build parameters for packaging application in rpm # fedora provides build_cxxflags, which is really just optflags @@ -204,6 +202,10 @@ update-mime-database -n ${_datadir}/mime 1>/dev/null 2>&1 & : %ghost %config %attr(666, -, -) %{_datadir}/%{name}/GlobalSettings.xml %changelog +* Tue Apr 21 2020 B Stack - 10.23-1 +- version bump +- remove ffs_libssl.patch + * Wed Mar 18 2020 B Stack - 10.22-1 - version bump - add ffs_libssl.patch -- cgit From 43bc1c9a1851aa9115cd44089296a9c0eaf72136 Mon Sep 17 00:00:00 2001 From: B Stack Date: Tue, 21 Apr 2020 09:12:27 -0400 Subject: adjust ffs_no_eraseif for el7,el8 --- freefilesync/ffs_no_eraseif.patch | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'freefilesync') diff --git a/freefilesync/ffs_no_eraseif.patch b/freefilesync/ffs_no_eraseif.patch index 1df8ef5..d20fd81 100644 --- a/freefilesync/ffs_no_eraseif.patch +++ b/freefilesync/ffs_no_eraseif.patch @@ -185,15 +185,15 @@ diff -x '*.swp' -x .git -x '*.orig' -x '*.rej' -Naur 10.18-1/FreeFileSync/Source cfg.directories.assign(uniqueFolders.begin(), uniqueFolders.end()); cfg.commandline = Zstr('"') + fff::getFreeFileSyncLauncherPath() + Zstr("\" \"") + filePath + Zstr('"'); } -diff -x '*.swp' -x .git -x '*.orig' -x '*.rej' -Naur 10.18-1/FreeFileSync/Source/RealTimeSync/monitor.cpp 10.18-2/FreeFileSync/Source/RealTimeSync/monitor.cpp ---- 10.18-1/FreeFileSync/Source/RealTimeSync/monitor.cpp 2019-11-20 16:15:55.822668055 -0500 -+++ 10.18-2/FreeFileSync/Source/RealTimeSync/monitor.cpp 2019-11-20 17:57:30.560558406 -0500 -@@ -163,7 +163,7 @@ - { - std::vector changedItems = watcher->getChanges([&] { requestUiUpdate(false /*readyForSync*/); /*throw X*/ }, - cbInterval); //throw FileError -- std::erase_if(changedItems, [](const DirWatcher::Entry& e) -+ eraseIf(changedItems, [](const DirWatcher::Entry& e) +diff -x '*.swp' -x .git -x '*.orig' -x '*.rej' -Naur 10.23-0/FreeFileSync/Source/RealTimeSync/monitor.cpp 10.23-1/FreeFileSync/Source/RealTimeSync/monitor.cpp +--- 10.23-0/FreeFileSync/Source/RealTimeSync/monitor.cpp 2020-04-21 08:03:55.508842092 -0400 ++++ 10.23-1/FreeFileSync/Source/RealTimeSync/monitor.cpp 2020-04-21 09:10:54.765302811 -0400 +@@ -152,7 +152,7 @@ + if (change.type == DirWatcher::ChangeType::baseFolderUnavailable) + return change; + +- std::erase_if(changes, [](const DirWatcher::Change& e) ++ eraseIf(changes, [](const DirWatcher::Change& e) { return endsWith(e.itemPath, Zstr(".ffs_tmp")) || //sync.8ea2.ffs_tmp -- cgit