summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJochum Döring2020-12-22 21:23:37 +0100
committerJochum Döring2020-12-22 21:23:37 +0100
commit26bd26487e16b765eab8a7f0bf2c51443605d726 (patch)
treed90090ddffb01ab2aca4cdcadcaeafa5df6e283e
parentceecaf817568d4120e295a7c3ae036478b33c66c (diff)
downloadaur-26bd26487e16b765eab8a7f0bf2c51443605d726.tar.gz
update to 11.4
-rwxr-xr-x.SRCINFO16
-rw-r--r--PKGBUILD26
-rw-r--r--curl_fix.patch29
-rw-r--r--reversions_11-1.patch68
-rw-r--r--revert_linkflags.patch16
-rw-r--r--theme_fixes.patch75
6 files changed, 178 insertions, 52 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 93c65ae147dc..011b7d192e83 100755
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = freefilesync
pkgdesc = Backup software to synchronize files and folders
- pkgver = 11.0
- pkgrel = 2
+ pkgver = 11.4
+ pkgrel = 1
url = https://freefilesync.org
arch = i686
arch = x86_64
@@ -10,19 +10,21 @@ pkgbase = freefilesync
depends = wxgtk
depends = curl
depends = lsb-release
- source = FreeFileSync_11.0_Source.zip::https://freefilesync.org/download/FreeFileSync_11.0_Source.zip
- source = curl_fix.patch
+ source = FreeFileSync_11.4_Source.zip::https://freefilesync.org/download/FreeFileSync_11.4_Source.zip
+ source = reversions_11-1.patch
+ source = theme_fixes.patch
source = revert_xdg_config_path.patch
source = revert_bulk_append.patch
source = revert_linkflags.patch
source = FreeFileSync.desktop
source = RealTimeSync.desktop
source = dlagent
- sha256sums = 361bab0798811764701cfda297c2031b9decb04bb2e434ec8fe80ba8cc01e56a
- sha256sums = 72687c95350814f5517d0db7f2ca1eeac4cff1dcbe00a9a8365f5dc76172ab2f
+ sha256sums = d0c20c1388024460944bb0871e91ce6dc9ac5c02be45a095f288db169eb844b4
+ sha256sums = 6c2d7f24e4edc52bc1af95d3f48ef67456cde0b952b81a702901acfb36545999
+ sha256sums = 4f2b1d46c0b754c668be7ec675a2bb09f72b3bd0e20987b4db61575b5ca1bf46
sha256sums = 0f9a9a6b2c3c460bbde7425bd62273c925259db1cc9dc18c6013aae99fb15cd8
sha256sums = 17e7db683662809882db6d6b3d855eb4372ca1bd05e15c4c490970a0b4b127c0
- sha256sums = 2942c0e74be2b15cdd83e36fa524c3b6c68d4b4da2042f1b0cf7c13d3b806eac
+ sha256sums = c83475ef3ac8bd534d637062d516c9eeea54ac18c775be55e1adef413ac73063
sha256sums = 590d87707240529ca893199f852143f5d7c7266cb050e37e615900b013ac3d51
sha256sums = 82439b4b81b0a72652befad9b9db52ffbc0180f307c92205aa5ab344f9f82830
sha256sums = 1649e7ea66235c6f82daf9beb6b61b7765df54e9ef70f7f6fc1283f5c2b1e54a
diff --git a/PKGBUILD b/PKGBUILD
index 35c095102672..6c81647b9655 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,8 +6,8 @@
# Maintainer: jooch <jooch AT gmx DOT com>
pkgname=freefilesync
-pkgver=11.0
-pkgrel=2
+pkgver=11.4
+pkgrel=1
pkgdesc="Backup software to synchronize files and folders"
arch=('i686' 'x86_64')
url="https://freefilesync.org"
@@ -16,7 +16,8 @@ depends=(wxgtk curl lsb-release)
makedepends=(unzip)
source=(
"FreeFileSync_${pkgver}_Source.zip::${url}/download/FreeFileSync_${pkgver}_Source.zip" #ffs
- curl_fix.patch
+ reversions_11-1.patch
+ theme_fixes.patch
revert_xdg_config_path.patch
revert_bulk_append.patch
revert_linkflags.patch
@@ -25,11 +26,12 @@ source=(
dlagent
)
-sha256sums=('361bab0798811764701cfda297c2031b9decb04bb2e434ec8fe80ba8cc01e56a'
- '72687c95350814f5517d0db7f2ca1eeac4cff1dcbe00a9a8365f5dc76172ab2f'
+sha256sums=('d0c20c1388024460944bb0871e91ce6dc9ac5c02be45a095f288db169eb844b4'
+ '6c2d7f24e4edc52bc1af95d3f48ef67456cde0b952b81a702901acfb36545999'
+ '4f2b1d46c0b754c668be7ec675a2bb09f72b3bd0e20987b4db61575b5ca1bf46'
'0f9a9a6b2c3c460bbde7425bd62273c925259db1cc9dc18c6013aae99fb15cd8'
'17e7db683662809882db6d6b3d855eb4372ca1bd05e15c4c490970a0b4b127c0'
- '2942c0e74be2b15cdd83e36fa524c3b6c68d4b4da2042f1b0cf7c13d3b806eac'
+ 'c83475ef3ac8bd534d637062d516c9eeea54ac18c775be55e1adef413ac73063'
'590d87707240529ca893199f852143f5d7c7266cb050e37e615900b013ac3d51'
'82439b4b81b0a72652befad9b9db52ffbc0180f307c92205aa5ab344f9f82830'
'1649e7ea66235c6f82daf9beb6b61b7765df54e9ef70f7f6fc1283f5c2b1e54a')
@@ -48,8 +50,16 @@ prepare() {
sed -e 's:m_textCtrlOfflineActivationKey->ForceUpper:// &:g' -i 'FreeFileSync/Source/ui/small_dlgs.cpp'
sed -e 's:const double scrollSpeed =:& 6; //:g' -i 'wx+/grid.cpp'
-# fix for curl wrapper
- patch -p1 -i curl_fix.patch
+ patch -p1 -i reversions_11-1.patch
+ grep -RiIl 'wxASCII_STR' | xargs sed -e 's/wxASCII_STR/wxString::FromAscii/g' -i
+ grep -RiIl 'wxDD_SHOW_HIDDEN' | xargs sed -e 's/, wxDD_DEFAULT_STYLE | wxDD_SHOW_HIDDEN//g' -i
+
+# undo zenju hacks
+ sed -e '71,77d' -i 'wx+/dc.h'
+ sed -e '73d' -i 'wx+/no_flicker.h'
+
+# GUI theme fixes (for improved color compatibility)
+ patch -p1 -i theme_fixes.patch
# add LINKFLAGS that were removed but that we still need in our case
patch -p1 -i revert_linkflags.patch
diff --git a/curl_fix.patch b/curl_fix.patch
deleted file mode 100644
index 4b1ee1b0f955..000000000000
--- a/curl_fix.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff -r -u a/libcurl/curl_wrap.h b/libcurl/curl_wrap.h
---- a/libcurl/curl_wrap.h 2020-07-22 13:22:19.000000000 +0200
-+++ b/libcurl/curl_wrap.h 2020-12-05 14:38:38.000000000 +0100
-@@ -138,8 +138,9 @@
- ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_HTTP3);
- ZEN_CHECK_CASE_FOR_CONSTANT(CURL_LAST);
- ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_QUIC_CONNECT_ERROR);
-+ ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_PROXY);
- }
-- static_assert(CURL_LAST == CURLE_QUIC_CONNECT_ERROR + 1);
-+ static_assert(CURL_LAST == CURLE_PROXY + 1);
-
- return replaceCpy<std::wstring>(L"Curl status %x", L"%x", numberTo<std::wstring>(static_cast<int>(sc)));
- }
-@@ -148,12 +149,10 @@
- void applyCurlOptions(CURL* easyHandle, const std::vector<CurlOption>& options) //throw SysError
- {
- for (const CurlOption& opt : options)
-- {
-- const CURLcode rc = ::curl_easy_setopt(easyHandle, opt.option, opt.value);
-- if (rc != CURLE_OK)
-+ if (const CURLcode rc = ::curl_easy_setopt(easyHandle, opt.option, opt.value);
-+ rc != CURLE_OK)
- throw SysError(formatSystemError("curl_easy_setopt(" + numberTo<std::string>(static_cast<int>(opt.option)) + ")",
- formatCurlStatusCode(rc), utfTo<std::wstring>(::curl_easy_strerror(rc))));
-- }
- }
- }
- }
diff --git a/reversions_11-1.patch b/reversions_11-1.patch
new file mode 100644
index 000000000000..c503a4f2bee3
--- /dev/null
+++ b/reversions_11-1.patch
@@ -0,0 +1,68 @@
+Version: 11.1
+Message: Had to revert gui_status_handler.cpp and .h entirely to version 11.0 to avoid the wx 3.1.4-isms here.
+diff --git a/FreeFileSync/Source/ui/gui_status_handler.cpp b/FreeFileSync/Source/ui/gui_status_handler.cpp
+index 3cb6aaaa..9484af2c 100644
+--- a/FreeFileSync/Source/ui/gui_status_handler.cpp
++++ b/FreeFileSync/Source/ui/gui_status_handler.cpp
+@@ -43,8 +43,8 @@ StatusHandlerTemporaryPanel::StatusHandlerTemporaryPanel(MainDialog& dlg,
+ mainDlg_.Update(); //don't wait until idle event!
+
+ //register keys
+- mainDlg_. Bind(wxEVT_CHAR_HOOK, &StatusHandlerTemporaryPanel::onLocalKeyEvent, this);
+- mainDlg_.m_buttonCancel->Bind(wxEVT_COMMAND_BUTTON_CLICKED, &StatusHandlerTemporaryPanel::onAbortCompare, this);
++ mainDlg_.Connect(wxEVT_CHAR_HOOK, wxKeyEventHandler(StatusHandlerTemporaryPanel::OnKeyPressed), nullptr, this);
++ mainDlg_.m_buttonCancel->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(StatusHandlerTemporaryPanel::OnAbortCompare), nullptr, this);
+ }
+
+
+@@ -128,9 +128,8 @@ StatusHandlerTemporaryPanel::~StatusHandlerTemporaryPanel()
+ mainDlg_.auiMgr_.Update();
+
+ //unregister keys
+- [[maybe_unused]] bool ubOk1 = mainDlg_. Unbind(wxEVT_CHAR_HOOK, &StatusHandlerTemporaryPanel::onLocalKeyEvent, this);
+- [[maybe_unused]] bool ubOk2 = mainDlg_.m_buttonCancel->Unbind(wxEVT_COMMAND_BUTTON_CLICKED, &StatusHandlerTemporaryPanel::onAbortCompare, this);
+- assert(ubOk1 && ubOk2);
++ mainDlg_.Disconnect(wxEVT_CHAR_HOOK, wxKeyEventHandler(StatusHandlerTemporaryPanel::OnKeyPressed), nullptr, this);
++ mainDlg_.m_buttonCancel->Disconnect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(StatusHandlerTemporaryPanel::OnAbortCompare), nullptr, this);
+
+ mainDlg_.compareStatus_->teardown();
+
+@@ -314,20 +313,20 @@ void StatusHandlerTemporaryPanel::forceUiUpdateNoThrow()
+ }
+
+
+-void StatusHandlerTemporaryPanel::onLocalKeyEvent(wxKeyEvent& event)
++void StatusHandlerTemporaryPanel::OnKeyPressed(wxKeyEvent& event)
+ {
+ const int keyCode = event.GetKeyCode();
+ if (keyCode == WXK_ESCAPE)
+ {
+ wxCommandEvent dummy;
+- onAbortCompare(dummy);
++ OnAbortCompare(dummy);
+ }
+
+ event.Skip();
+ }
+
+
+-void StatusHandlerTemporaryPanel::onAbortCompare(wxCommandEvent& event)
++void StatusHandlerTemporaryPanel::OnAbortCompare(wxCommandEvent& event)
+ {
+ userRequestAbort();
+ }
+diff --git a/FreeFileSync/Source/ui/gui_status_handler.h b/FreeFileSync/Source/ui/gui_status_handler.h
+index e8ed01e4..2a9e00d2 100644
+--- a/FreeFileSync/Source/ui/gui_status_handler.h
++++ b/FreeFileSync/Source/ui/gui_status_handler.h
+@@ -41,8 +41,8 @@ public:
+ Result reportResults(); //noexcept!!
+
+ private:
+- void onLocalKeyEvent(wxKeyEvent& event);
+- void onAbortCompare(wxCommandEvent& event); //handle abort button click
++ void OnKeyPressed(wxKeyEvent& event);
++ void OnAbortCompare(wxCommandEvent& event); //handle abort button click
+ void showStatsPanel();
+
+ MainDialog& mainDlg_;
diff --git a/revert_linkflags.patch b/revert_linkflags.patch
index a04620f8575c..323924a00912 100644
--- a/revert_linkflags.patch
+++ b/revert_linkflags.patch
@@ -1,12 +1,12 @@
diff -r -u a/FreeFileSync/Source/Makefile b/FreeFileSync/Source/Makefile
---- a/FreeFileSync/Source/Makefile 2020-05-17 19:15:17.000000000 +0200
-+++ b/FreeFileSync/Source/Makefile 2020-05-18 21:46:55.650444123 +0200
+--- a/FreeFileSync/Source/Makefile
++++ b/FreeFileSync/Source/Makefile
@@ -4,7 +4,7 @@
-Wall -Wfatal-errors -Wmissing-include-dirs -Wswitch-enum -Wcast-align -Wshadow -Wnon-virtual-dtor \
-O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread
--linkFlags = -s -no-pie `wx-config --libs std, aui --debug=no` -pthread
-+linkFlags = -s -no-pie `wx-config --libs std, aui --debug=no` -lz -pthread
+-linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
++linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -lz -pthread
cxxFlags += `pkg-config --cflags openssl`
@@ -19,14 +19,14 @@ diff -r -u a/FreeFileSync/Source/Makefile b/FreeFileSync/Source/Makefile
cxxFlags += -isystem/usr/include/gtk-2.0
diff -r -u a/FreeFileSync/Source/RealTimeSync/Makefile b/FreeFileSync/Source/RealTimeSync/Makefile
---- a/FreeFileSync/Source/RealTimeSync/Makefile 2020-05-17 19:15:17.000000000 +0200
-+++ b/FreeFileSync/Source/RealTimeSync/Makefile 2020-05-18 21:46:42.700571925 +0200
+--- a/FreeFileSync/Source/RealTimeSync/Makefile
++++ b/FreeFileSync/Source/RealTimeSync/Makefile
@@ -4,10 +4,11 @@
-Wall -Wfatal-errors -Wmissing-include-dirs -Wswitch-enum -Wcast-align -Wshadow -Wnon-virtual-dtor \
-O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread
--linkFlags = -s -no-pie `wx-config --libs std, aui --debug=no` -pthread
-+linkFlags = -s -no-pie `wx-config --libs std, aui --debug=no` -lz -pthread
+-linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
++linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -lz -pthread
#Gtk - support "no button border"
cxxFlags += `pkg-config --cflags gtk+-2.0`
diff --git a/theme_fixes.patch b/theme_fixes.patch
new file mode 100644
index 000000000000..e87464db7cfb
--- /dev/null
+++ b/theme_fixes.patch
@@ -0,0 +1,75 @@
+diff -r -u a/wx+/grid.cpp b/wx+/grid.cpp
+--- a/wx+/grid.cpp 2020-12-05 14:38:39.000000000 +0100
++++ b/wx+/grid.cpp 2020-12-22 06:36:21.000000000 +0100
+@@ -36,10 +36,10 @@
+ {
+ //------------------------------ Grid Parameters --------------------------------
+ inline wxColor getColorLabelText(bool enabled) { return wxSystemSettings::GetColour(enabled ? wxSYS_COLOUR_WINDOWTEXT : wxSYS_COLOUR_GRAYTEXT); }
+-inline wxColor getColorGridLine() { return { 192, 192, 192 }; } //light grey
++inline wxColor getColorGridLine() { return wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW); } //light grey
+
+ inline wxColor getColorLabelGradientFrom() { return wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW); }
+-inline wxColor getColorLabelGradientTo () { return { 200, 200, 200 }; } //light grey
++inline wxColor getColorLabelGradientTo () { return wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE); } //light grey
+
+ inline wxColor getColorLabelGradientFocusFrom() { return getColorLabelGradientFrom(); }
+ inline wxColor getColorLabelGradientFocusTo () { return GridData::getColorSelectionGradientFrom(); }
+@@ -227,7 +227,7 @@
+ {
+ //left border
+ {
+- wxDCPenChanger dummy(dc, wxPen(*wxWHITE, fastFromDIP(1)));
++ wxDCPenChanger dummy(dc, wxPen(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW), fastFromDIP(1)));
+ dc.DrawLine(rect.GetTopLeft(), rect.GetBottomLeft());
+ }
+ //bottom, right border
+@@ -444,7 +444,7 @@
+
+ wxRect rectShrinked = clientRect;
+ rectShrinked.Deflate(fastFromDIP(1));
+- dc.SetPen(wxPen(*wxWHITE, fastFromDIP(1)));
++ dc.SetPen(wxPen(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW), fastFromDIP(1)));
+
+ //dc.DrawLine(clientRect.GetTopLeft(), clientRect.GetTopRight() + wxPoint(1, 0));
+ dc.DrawLine(rectShrinked.GetTopLeft(), rectShrinked.GetBottomLeft() + wxPoint(0, 1));
+@@ -545,7 +545,7 @@
+
+ //border lines
+ {
+- wxDCPenChanger dummy(dc, wxPen(*wxWHITE, fastFromDIP(1)));
++ wxDCPenChanger dummy(dc, wxPen(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW), fastFromDIP(1)));
+ dc.DrawLine(rect.GetTopLeft(), rect.GetTopRight());
+ }
+ {
+diff -r -u a/FreeFileSync/Source/ui/file_grid.cpp b/FreeFileSync/Source/ui/file_grid.cpp
+--- a/FreeFileSync/Source/ui/file_grid.cpp 2020-12-05 14:38:39.000000000 +0100
++++ b/FreeFileSync/Source/ui/file_grid.cpp 2020-12-22 06:05:29.000000000 +0100
+@@ -46,7 +46,7 @@
+ inline wxColor getColorInactiveBack(bool faint) { if (faint) return { 0xf6, 0xf6, 0xf6}; return { 0xe4, 0xe4, 0xe4 }; } //light grey
+ inline wxColor getColorInactiveText() { return { 0x40, 0x40, 0x40 }; } //dark grey
+
+-inline wxColor getColorGridLine() { return { 192, 192, 192 }; } //light grey
++inline wxColor getColorGridLine() { return wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW); } //light grey
+
+ const int FILE_GRID_GAP_SIZE_DIP = 2;
+ const int FILE_GRID_GAP_SIZE_WIDE_DIP = 6;
+diff -r -u a/FreeFileSync/Source/ui/triple_splitter.cpp b/FreeFileSync/Source/ui/triple_splitter.cpp
+--- a/FreeFileSync/Source/ui/triple_splitter.cpp 2020-12-05 14:38:39.000000000 +0100
++++ b/FreeFileSync/Source/ui/triple_splitter.cpp 2020-12-22 05:37:32.000000000 +0100
+@@ -8,6 +8,7 @@
+ #include <algorithm>
+ #include <zen/stl_tools.h>
+ #include <wx+/dc.h>
++#include <wx/settings.h>
+
+ using namespace zen;
+ using namespace fff;
+@@ -24,8 +25,8 @@
+ const int CHILD_WINDOW_MIN_SIZE_DIP = 50; //min. size of managed windows
+
+ //let's NOT create wxWidgets objects statically:
+-inline wxColor getColorSashGradientFrom() { return { 192, 192, 192 }; } //light grey
+-inline wxColor getColorSashGradientTo () { return *wxWHITE; }
++inline wxColor getColorSashGradientFrom() { return wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW); } //light grey
++inline wxColor getColorSashGradientTo () { return wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE); }
+ }