diff options
27 files changed, 256 insertions, 179 deletions
diff --git a/freefilesync/FreeFileSync.desktop b/freefilesync/FreeFileSync.desktop index d7b508d..6bb4d24 100644 --- a/freefilesync/FreeFileSync.desktop +++ b/freefilesync/FreeFileSync.desktop @@ -2,7 +2,7 @@ Categories=GTK;Utility;FileTools; Comment=Backup software to synchronize files and folders Comment[pt_BR]=Aplicação de backup para sincronizar arquivos e diretórios -Exec=FreeFileSync +Exec=FreeFileSync %f GenericName=File synchronization GenericName[pt_BR]=Sincronização de arquivos Icon=FreeFileSync diff --git a/freefilesync/debian/FreeFileSync.desktop b/freefilesync/debian/FreeFileSync.desktop index d7b508d..6bb4d24 100644 --- a/freefilesync/debian/FreeFileSync.desktop +++ b/freefilesync/debian/FreeFileSync.desktop @@ -2,7 +2,7 @@ Categories=GTK;Utility;FileTools; Comment=Backup software to synchronize files and folders Comment[pt_BR]=Aplicação de backup para sincronizar arquivos e diretórios -Exec=FreeFileSync +Exec=FreeFileSync %f GenericName=File synchronization GenericName[pt_BR]=Sincronização de arquivos Icon=FreeFileSync diff --git a/freefilesync/debian/README.Debian b/freefilesync/debian/README.Debian index dee9b13..2235ac6 100644 --- a/freefilesync/debian/README.Debian +++ b/freefilesync/debian/README.Debian @@ -1,3 +1,23 @@ +freefilesync (10.20-1+devuan) + + * gtk3 build for obs + * For changing gtk2 to gtk3, see control and patches/series files + +In case the sound is not working on a Devuan system for FreeFileSync, +check file `/etc/modprobe.d/oss-compat.conf` + + $ cat /etc/modprobe.d/oss-compat.conf + softdep snd-pcm post: snd-pcm-oss + softdep snd-mixer post: snd-mixer-oss + softdep snd-seq post: snd-seq-midi snd-seq-oss + +Setting this, so that /dev/dsp exists, allows freefilesync to play +audio. Additionally, nothing else should be playing audio, because if +something else is playing audio, a stack trace of FreeFileSync will +show error "device or resource busy." + + -- B Stack <bgstack15@gmail.com> Sat, 15 Feb 2020 16:30:36 -0500 + freefilesync (10.19-2+devuan) * gtk2 build diff --git a/freefilesync/debian/RealTimeSync.desktop b/freefilesync/debian/RealTimeSync.desktop index fa2b1d4..d7d2670 100644 --- a/freefilesync/debian/RealTimeSync.desktop +++ b/freefilesync/debian/RealTimeSync.desktop @@ -2,7 +2,7 @@ Categories=GTK;Utility;FileTools; Comment=Real time synchronization Comment[pt_BR]=Sincronização em tempo real -Exec=RealTimeSync +Exec=RealTimeSync %f GenericName=Automated Synchronization GenericName[pt_BR]=Sincronização Automatizada Icon=RealTimeSync diff --git a/freefilesync/debian/changelog b/freefilesync/debian/changelog index c57660b..5fa26cb 100644 --- a/freefilesync/debian/changelog +++ b/freefilesync/debian/changelog @@ -1,3 +1,24 @@ +freefilesync (10.20-1+devuan) obs; urgency=low + + * Send email notifications after sync (Donation Edition) + * Generate log files in HTML format + * Detect sync database consistency errors + * Start log file with preview of first 50 errors/warnings + * Mitigate lock file data corruption + * Print Windows error codes in hexadecimal + * Fixed missing MTP and network links in folder picker (Linux) + * Display versioning and log folder path history + * Display and log all config names for merged configurations + * Run post-sync command synchronously and log exit code + * Fixed crash on Bitvise SFTP servers with zlib delayed compression + * Show actual time out used in failure message + * Show detailed error message when failing to test sound files + * Fixed timeout for long-running FTP uploads by sending keep-alives + * Use Donation Edition on unlimited number of virtual machines + * Ignore accidental clicks in empty space of configuration panel + + -- B Stack <bgstack15@gmail.com> Sat, 15 Feb 2020 15:58:33 -0500 + freefilesync (10.19-2+devuan) manual; urgency=low * gtk2 build diff --git a/freefilesync/debian/control b/freefilesync/debian/control index 58a71cf..27edf04 100644 --- a/freefilesync/debian/control +++ b/freefilesync/debian/control @@ -3,19 +3,19 @@ Section: utils Priority: optional Maintainer: B Stack <bgstack15@gmail.com> Build-Depends: debhelper (>=12~), - autotools-dev, imagemagick, libcurl4-openssl-dev, libssh2-1-dev, libssl-dev, wx3.0-headers, unzip, -# gtk2 version - libgtk2.0-dev, - libwxgtk3.0-dev, -# gtk3 version -# libgtk-3-dev, -# libwxgtk3.0-gtk3-dev, +# 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), +# gtk3 version, and these must be removed for gtk2 build + libgtk-3-dev, + libwxgtk3.0-gtk3-dev, Standards-Version: 4.1.4 Homepage: https://freefilesync.org/ @@ -24,7 +24,7 @@ Architecture: any Multi-Arch: foreign Depends: ${misc:Depends}, ${shlibs:Depends}, xdg-utils -Description: +Description: cross-platform file sync utility, gpl release FreeFileSync is a folder comparison and synchronization software that creates and manages backup copies of all your important files. Instead of copying every file every time, FreeFileSync determines the diff --git a/freefilesync/debian/files b/freefilesync/debian/files deleted file mode 100644 index c26d041..0000000 --- a/freefilesync/debian/files +++ /dev/null @@ -1,2 +0,0 @@ -freefilesync_10.9-1devuan_amd64.buildinfo utils optional -freefilesync_10.9-1devuan_amd64.deb utils optional diff --git a/freefilesync/debian/files-for-gtk2-to-3.txt b/freefilesync/debian/files-for-gtk2-to-3.txt new file mode 100644 index 0000000..7d15d0e --- /dev/null +++ b/freefilesync/debian/files-for-gtk2-to-3.txt @@ -0,0 +1,3 @@ +control +changelog +patches/series diff --git a/freefilesync/debian/freefilesync.manpages b/freefilesync/debian/freefilesync.manpages new file mode 100644 index 0000000..2fb19fb --- /dev/null +++ b/freefilesync/debian/freefilesync.manpages @@ -0,0 +1 @@ +debian/manpages/* diff --git a/freefilesync/debian/freefilesync.substvars b/freefilesync/debian/freefilesync.substvars deleted file mode 100644 index fad364f..0000000 --- a/freefilesync/debian/freefilesync.substvars +++ /dev/null @@ -1,3 +0,0 @@ -shlibs:Depends=libatk1.0-0 (>= 1.12.4), libc6 (>= 2.28), libcairo2 (>= 1.2.4), libcurl4 (>= 7.16.2), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:3.0), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.16.0), libgtk2.0-0 (>= 2.14.0), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libselinux1 (>= 1.32), libssh2-1 (>= 1.7.0), libssl1.1 (>= 1.1.0), libstdc++6 (>= 7), libwxbase3.0-0v5 (>= 3.0.4+dfsg), libwxgtk3.0-0v5 (>= 3.0.4+dfsg), zlib1g (>= 1:1.2.0) -misc:Depends= -misc:Pre-Depends= diff --git a/freefilesync/debian/freefilesync_devuan.dsc b/freefilesync/debian/freefilesync_devuan.dsc new file mode 100644 index 0000000..80b8697 --- /dev/null +++ b/freefilesync/debian/freefilesync_devuan.dsc @@ -0,0 +1,14 @@ +Format: 3.0 (quilt) +Source: freefilesync +Binary: freefilesync +Architecture: any +Version: 10.20-1+devuan +Maintainer: B Stack <bgstack15@gmail.com> +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 freefilesync_10.20.orig.tar.gz + 00000000000000000000000000000000 1 freefilesync_10.20-1+devuan.debian.tar.xz diff --git a/freefilesync/debian/manpages/RealtimeSync.1 b/freefilesync/debian/manpages/RealTimeSync.1 index 9b1f992..9b1f992 100644 --- a/freefilesync/debian/manpages/RealtimeSync.1 +++ b/freefilesync/debian/manpages/RealTimeSync.1 diff --git a/freefilesync/debian/patches/ffs_allow_parallel_ops.patch b/freefilesync/debian/patches/ffs_allow_parallel_ops.patch index e464662..3d8197f 100644 --- a/freefilesync/debian/patches/ffs_allow_parallel_ops.patch +++ b/freefilesync/debian/patches/ffs_allow_parallel_ops.patch @@ -13,13 +13,13 @@ diff -x '*.orig' -x '*.swp' -x '*.rej' -Naur 10.9-0/FreeFileSync/Source/ui/folde return; diff -Naur -x '*.orig' -x '*.rej' 10.9-0/FreeFileSync/Source/ui/sync_cfg.cpp 10.9-1/FreeFileSync/Source/ui/sync_cfg.cpp --- 10.9-0/FreeFileSync/Source/ui/sync_cfg.cpp 2019-02-10 22:01:42.075159451 -0500 -+++ 10.9-1/FreeFileSync/Source/ui/sync_cfg.cpp 2019-02-11 21:25:11.685992654 -0500 -@@ -263,7 +263,7 @@ ++++ 10.20-1/FreeFileSync/Source/ui/sync_cfg.cpp 2019-02-11 21:25:11.685992654 -0500 +@@ -283,7 +283,7 @@ + commandHistoryOut_(commandHistory), globalPairCfg_(globalPairCfg), localPairCfg_(localPairConfig), - showMultipleCfgs_(showMultipleCfgs), --perfPanelActive_(false), -+perfPanelActive_(true), - commandHistItemsMax_(commandHistItemsMax) +-enableExtraFeatures_(false), ++enableExtraFeatures_(true), + showMultipleCfgs_(showMultipleCfgs) { setStandardButtonLayout(*bSizerStdButtons, StdButtons().setAffirmative(m_buttonOkay).setCancel(m_buttonCancel)); diff --git a/freefilesync/debian/patches/ffs_curl.patch b/freefilesync/debian/patches/ffs_curl.patch index 2844a54..2396648 100644 --- a/freefilesync/debian/patches/ffs_curl.patch +++ b/freefilesync/debian/patches/ffs_curl.patch @@ -18,3 +18,21 @@ diff -r -u 10.17-0/FreeFileSync/Source/afs/ftp.cpp 10.17-1/FreeFileSync/Source/a 2. CURLFTPMETHOD_SINGLECWD requires absolute paths to skip one needless "CWD entry path": https://github.com/curl/curl/pull/4332 => https://curl.haxx.se/docs/faq.html#How_do_I_list_the_root_dir_of_an +Message: Devuan does not have whichever version of libcurl that provides these error codes, probably 7.68.0. Devuan as of 2020-02-15 has libcurl4-openssl-dev=7.67.0-2 +diff -Naur 10.20-0/libcurl/curl_wrap.h 10.20-1/libcurl/curl_wrap.h +--- 10.20-0/libcurl/curl_wrap.h 2020-02-15 14:50:08.356617565 -0500 ++++ 10.20-1/libcurl/curl_wrap.h 2020-02-15 14:51:55.961645573 -0500 +@@ -135,10 +135,10 @@ + ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_HTTP2_STREAM); + ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_RECURSIVE_API_CALL); + ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_AUTH_ERROR); +- ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_HTTP3); +- ZEN_CHECK_CASE_FOR_CONSTANT(CURL_LAST); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_HTTP3); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(CURL_LAST); + } +- static_assert(CURL_LAST == CURLE_HTTP3 + 1); ++ //static_assert(CURL_LAST == CURLE_HTTP3 + 1); + + return replaceCpy<std::wstring>(L"Curl status %x.", L"%x", numberTo<std::wstring>(static_cast<int>(sc))); + } diff --git a/freefilesync/debian/patches/ffs_devuan.patch b/freefilesync/debian/patches/ffs_devuan.patch new file mode 100644 index 0000000..f2290bd --- /dev/null +++ b/freefilesync/debian/patches/ffs_devuan.patch @@ -0,0 +1,62 @@ +Author: B Stack +Source: Original research +Last date modified: 2020-02-15 +Message: Main patch to compile on Devuan. +diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/base/ffs_paths.cpp 10.18-1/FreeFileSync/Source/base/ffs_paths.cpp +--- 10.13-0/FreeFileSync/Source/base/ffs_paths.cpp 2019-06-14 20:23:07.615661499 -0400 ++++ 10.18-1/FreeFileSync/Source/base/ffs_paths.cpp 2019-11-21 09:41:42.287474472 -0500 +@@ -64,7 +64,8 @@ + + Zstring fff::getResourceDirPf() + { +- return getProcessParentFolderPath() + FILE_NAME_SEPARATOR + Zstr("Resources") + FILE_NAME_SEPARATOR; ++ // For Fedora, EL and Devuan, install to /usr/share/freefilesync specificly ++ return Zstr("/usr/share/freefilesync/"); + } + + +diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/Makefile 10.18-1/FreeFileSync/Source/Makefile +--- 10.11-0/FreeFileSync/Source/Makefile 2019-04-12 08:05:57.000000000 -0400 ++++ 10.18-2/FreeFileSync/Source/Makefile 2019-11-21 09:42:57.408243242 -0500 +@@ -1,10 +1,10 @@ +-EXENAME = FreeFileSync_$(shell arch) ++EXENAME = FreeFileSync + + CXXFLAGS = -std=c++2a -pipe -DWXINTL_NO_GETTEXT_MACRO -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ + -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 + + + CXXFLAGS += `pkg-config --cflags openssl` +diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.19-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.19-1/FreeFileSync/Source/ui/small_dlgs.cpp +--- 10.11-0/FreeFileSync/Source/ui/small_dlgs.cpp 2019-12-27 07:56:06.714625467 -0500 ++++ 10.19-1/FreeFileSync/Source/ui/small_dlgs.cpp 2019-12-27 08:56:49.251467477 -0500 +@@ -95,6 +95,8 @@ + build += L"64 Bit"; + #endif + ++ build += L" for Devuan"; ++ + build += SPACED_BULLET; + build += formatTime<wxString>(FORMAT_DATE, getCompileTime()); + +diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/RealTimeSync/Makefile 10.18-1/FreeFileSync/Source/RealTimeSync/Makefile +--- 10.18-0/FreeFileSync/Source/RealTimeSync/Makefile 2020-02-15 11:45:58.241515736 -0500 ++++ 10.20-1/FreeFileSync/Source/RealTimeSync/Makefile 2020-02-15 15:41:50.787195378 -0500 +@@ -1,10 +1,10 @@ +-EXENAME = RealTimeSync_$(shell arch) ++EXENAME = RealTimeSync + + CXXFLAGS = -std=c++2a -pipe -DWXINTL_NO_GETTEXT_MACRO -I../../.. -I../../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ + -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 + + #Gtk - support "no button border" + CXXFLAGS += `pkg-config --cflags gtk+-2.0` + diff --git a/freefilesync/debian/patches/ffs_devuan_gtk2.patch b/freefilesync/debian/patches/ffs_devuan_gtk2.patch index 9db9584..f3242b3 100644 --- a/freefilesync/debian/patches/ffs_devuan_gtk2.patch +++ b/freefilesync/debian/patches/ffs_devuan_gtk2.patch @@ -1,36 +1,10 @@ Author: B Stack Source: Original research Date: 2019-11-21 -Message: Main patch to compile on Devuan. -diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/base/ffs_paths.cpp 10.18-1/FreeFileSync/Source/base/ffs_paths.cpp ---- 10.13-0/FreeFileSync/Source/base/ffs_paths.cpp 2019-06-14 20:23:07.615661499 -0400 -+++ 10.18-1/FreeFileSync/Source/base/ffs_paths.cpp 2019-11-21 09:41:42.287474472 -0500 -@@ -64,7 +64,8 @@ - - Zstring fff::getResourceDirPf() - { -- return getProcessParentFolderPath() + FILE_NAME_SEPARATOR + Zstr("Resources") + FILE_NAME_SEPARATOR; -+ // For Fedora, EL and Devuan, install to /usr/share/freefilesync specificly -+ return Zstr("/usr/share/freefilesync/"); - } - - +Message: Patches to use gtk2. Depends on ffs_devuan.patch diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/Makefile 10.18-1/FreeFileSync/Source/Makefile --- 10.11-0/FreeFileSync/Source/Makefile 2019-04-12 08:05:57.000000000 -0400 +++ 10.18-2/FreeFileSync/Source/Makefile 2019-11-21 09:42:57.408243242 -0500 -@@ -1,10 +1,10 @@ --EXENAME = FreeFileSync_$(shell arch) -+EXENAME = FreeFileSync - - CXXFLAGS = -std=c++2a -pipe -DWXINTL_NO_GETTEXT_MACRO -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ - -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 - - - CXXFLAGS += `pkg-config --cflags openssl` @@ -16,9 +16,10 @@ CXXFLAGS += `pkg-config --cflags libssh2` LINKFLAGS += `pkg-config --libs libssh2` @@ -45,38 +19,13 @@ diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Sou #support for SELinux (optional) SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES) diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/RealTimeSync/Makefile 10.18-1/FreeFileSync/Source/RealTimeSync/Makefile ---- 10.11-0/FreeFileSync/Source/RealTimeSync/Makefile 2019-04-12 08:05:57.000000000 -0400 -+++ 10.18-2/FreeFileSync/Source/RealTimeSync/Makefile 2019-11-21 09:46:11.378240094 -0500 -@@ -1,15 +1,16 @@ --EXENAME = RealTimeSync_$(shell arch) -+EXENAME = RealTimeSync - - CXXFLAGS = -std=c++2a -pipe -DWXINTL_NO_GETTEXT_MACRO -I../../.. -I../../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ - -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 +--- 10.20-0/FreeFileSync/Source/RealTimeSync/Makefile 2020-02-15 11:45:58.241515736 -0500 ++++ 10.20-1/FreeFileSync/Source/RealTimeSync/Makefile 2020-02-15 15:43:32.852203730 -0500 +@@ -8,6 +8,7 @@ #Gtk - support "no button border" --CXXFLAGS += `pkg-config --cflags gtk+-2.0` -+CXXFLAGS += `pkg-config --cflags gtk+-2.0` + CXXFLAGS += `pkg-config --cflags gtk+-2.0` +LINKFLAGS += `pkg-config --libs gtk+-2.0` #treat as system headers so that warnings are hidden: --CXXFLAGS += -isystem/usr/include/gtk-2.0 -+CXXFLAGS += -isystem/usr/include/gtk-2.0 - - CPP_FILES= - CPP_FILES+=application.cpp -diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.19-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.19-1/FreeFileSync/Source/ui/small_dlgs.cpp ---- 10.11-0/FreeFileSync/Source/ui/small_dlgs.cpp 2019-12-27 07:56:06.714625467 -0500 -+++ 10.19-1/FreeFileSync/Source/ui/small_dlgs.cpp 2019-12-27 08:56:49.251467477 -0500 -@@ -95,6 +95,8 @@ - build += L"64 Bit"; - #endif - -+ build += L" for Devuan"; -+ - build += SPACED_BULLET; - build += formatTime<wxString>(FORMAT_DATE, getCompileTime()); + CXXFLAGS += -isystem/usr/include/gtk-2.0 diff --git a/freefilesync/debian/patches/ffs_devuan_gtk3.patch b/freefilesync/debian/patches/ffs_devuan_gtk3.patch index 787f6d5..1f87d9a 100644 --- a/freefilesync/debian/patches/ffs_devuan_gtk3.patch +++ b/freefilesync/debian/patches/ffs_devuan_gtk3.patch @@ -3,35 +3,9 @@ Source: Original research Date: 2019-11-21 Message: Main patch to compile on Devuan. This reintroduces the gtk-3 usage, because Debian/Devuan stopped packaging libwxgtk3.0-dev (which used gtk2) and only does libwxgtk3.0-gtk3-dev. However, by reintroducing the gtk3, it brings back the old gtk3 instability from my previous packaging effort: https://freefilesync.org/forum/viewtopic.php?t=4918. /mnt/public/packages/old/freefilesync/freefilesync-9.7-1.master.tgz. Upstream never replied, but did note in the source that gtk3 is inherently unstable. -diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/base/ffs_paths.cpp 10.18-1/FreeFileSync/Source/base/ffs_paths.cpp ---- 10.13-0/FreeFileSync/Source/base/ffs_paths.cpp 2019-06-14 20:23:07.615661499 -0400 -+++ 10.18-1/FreeFileSync/Source/base/ffs_paths.cpp 2019-11-21 09:41:42.287474472 -0500 -@@ -64,7 +64,8 @@ - - Zstring fff::getResourceDirPf() - { -- return getProcessParentFolderPath() + FILE_NAME_SEPARATOR + Zstr("Resources") + FILE_NAME_SEPARATOR; -+ // For Fedora, EL and Devuan, install to /usr/share/freefilesync specificly -+ return Zstr("/usr/share/freefilesync/"); - } - - diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/Makefile 10.18-1/FreeFileSync/Source/Makefile --- 10.11-0/FreeFileSync/Source/Makefile 2019-04-12 08:05:57.000000000 -0400 +++ 10.18-1/FreeFileSync/Source/Makefile 2019-11-21 09:42:57.408243242 -0500 -@@ -1,10 +1,10 @@ --EXENAME = FreeFileSync_$(shell arch) -+EXENAME = FreeFileSync - - CXXFLAGS = -std=c++2a -pipe -DWXINTL_NO_GETTEXT_MACRO -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ - -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 - - - CXXFLAGS += `pkg-config --cflags openssl` @@ -16,9 +16,10 @@ CXXFLAGS += `pkg-config --cflags libssh2` LINKFLAGS += `pkg-config --libs libssh2` @@ -45,19 +19,10 @@ diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Sou #support for SELinux (optional) SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES) -diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/RealTimeSync/Makefile 10.18-1/FreeFileSync/Source/RealTimeSync/Makefile ---- 10.11-0/FreeFileSync/Source/RealTimeSync/Makefile 2019-04-12 08:05:57.000000000 -0400 -+++ 10.18-1/FreeFileSync/Source/RealTimeSync/Makefile 2019-11-21 09:46:11.378240094 -0500 -@@ -1,15 +1,16 @@ --EXENAME = RealTimeSync_$(shell arch) -+EXENAME = RealTimeSync - - CXXFLAGS = -std=c++2a -pipe -DWXINTL_NO_GETTEXT_MACRO -I../../.. -I../../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ - -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 +--- 10.20-0a/FreeFileSync/Source/RealTimeSync/Makefile 2020-02-15 17:30:56.738835393 -0500 ++++ 10.20-2/FreeFileSync/Source/RealTimeSync/Makefile 2020-02-15 19:09:17.460124615 -0500 +@@ -7,9 +7,10 @@ + LINKFLAGS = -s -no-pie `wx-config --libs std, aui --debug=no` -lz -pthread #Gtk - support "no button border" -CXXFLAGS += `pkg-config --cflags gtk+-2.0` @@ -69,18 +34,6 @@ diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Sou CPP_FILES= CPP_FILES+=application.cpp -diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.19-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.19-1/FreeFileSync/Source/ui/small_dlgs.cpp ---- 10.11-0/FreeFileSync/Source/ui/small_dlgs.cpp 2019-12-27 07:56:06.714625467 -0500 -+++ 10.19-1/FreeFileSync/Source/ui/small_dlgs.cpp 2019-12-27 08:56:49.251467477 -0500 -@@ -95,6 +95,8 @@ - build += L"64 Bit"; - #endif - -+ build += L" for Devuan"; -+ - build += SPACED_BULLET; - build += formatTime<wxString>(FORMAT_DATE, getCompileTime()); - diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/wx+/dc.h 10.18-1/wx+/dc.h --- 10.18-0/wx+/dc.h 2019-11-21 08:24:23.967769384 -0500 +++ 10.18-1/wx+/dc.h 2019-11-21 09:42:12.779786504 -0500 diff --git a/freefilesync/debian/patches/ffs_libssh2.patch b/freefilesync/debian/patches/ffs_libssh2.patch index 0abd660..66c6a88 100644 --- a/freefilesync/debian/patches/ffs_libssh2.patch +++ b/freefilesync/debian/patches/ffs_libssh2.patch @@ -22,15 +22,18 @@ Date: 2019-09-17T13:41:23Z } return replaceCpy<std::wstring>(L"SSH status %x.", L"%x", numberTo<std::wstring>(sc)); } -diff -x '*.swp' -x .git -Naur 10.10-0/FreeFileSync/Source/afs/sftp.cpp 10.10-1/FreeFileSync/Source/afs/sftp.cpp ---- 10.10-0/FreeFileSync/Source/afs/sftp.cpp 2019-03-12 08:09:58.465098982 -0400 -+++ 10.17-1/FreeFileSync/Source/afs/sftp.cpp 2019-10-21 08:46:07.562161269 -0400 -@@ -1588,7 +1588,7 @@ - runSftpCommand(login_, L"libssh2_sftp_mkdir", //throw SysError - [&](const SshSession::Details& sd) //noexcept! - { -- return ::libssh2_sftp_mkdir(sd.sftpChannel, getLibssh2Path(afsPath), LIBSSH2_SFTP_DEFAULT_MODE); -+ return ::libssh2_sftp_mkdir(sd.sftpChannel, getLibssh2Path(afsPath), LIBSSH2_SFTP_S_IRWXU | LIBSSH2_SFTP_S_IRWXG | LIBSSH2_SFTP_S_IRWXO); - //default for newly created directories: 0777 (LIBSSH2_SFTP_S_IRWXU | LIBSSH2_SFTP_S_IRWXG | LIBSSH2_SFTP_S_IRWXO) - }); - } +Message: It appears upstream moved libssh2_wrap, but the above file patches correctly, so we will leave it while adding this new, identical patch. +diff -Naur /usr/src/freefilesync/10.20-0/libssh2/libssh2_wrap.h /usr/src/freefilesync/10.20-1/libssh2/libssh2_wrap.h +--- 10.20-0/libssh2/libssh2_wrap.h 2020-02-15 14:50:08.356617565 -0500 ++++ 10.20-1/libssh2/libssh2_wrap.h 2020-02-15 15:11:25.992842154 -0500 +@@ -172,8 +172,8 @@ + ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_ENCRYPT); + ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_BAD_SOCKET); + ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_KNOWN_HOSTS); +- ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_CHANNEL_WINDOW_FULL); +- ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_KEYFILE_AUTH_FAILED); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_CHANNEL_WINDOW_FULL); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_KEYFILE_AUTH_FAILED); + } + return replaceCpy<std::wstring>(L"SSH status %x.", L"%x", numberTo<std::wstring>(sc)); + } diff --git a/freefilesync/debian/patches/ffs_no_check_updates.patch b/freefilesync/debian/patches/ffs_no_check_updates.patch index eaff5c4..bb54677 100644 --- a/freefilesync/debian/patches/ffs_no_check_updates.patch +++ b/freefilesync/debian/patches/ffs_no_check_updates.patch @@ -61,10 +61,10 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/version_check.cpp 1 std::string getOnlineVersion(const std::vector<std::pair<std::string, std::string>>& postParams) //throw SysError { -- const std::string buffer = sendHttpPost(Zstr("https://api.freefilesync.org/latest_version"), postParams, -- ffsUpdateCheckUserAgent, nullptr /*caCertFilePath*/, nullptr /*notifyUnbufferedIO*/).readAll(); //throw SysError -+ const std::string buffer = ""; - return trimCpy(buffer); +- const std::string response = sendHttpPost(Zstr("https://api.freefilesync.org/latest_version"), postParams, +- ffsUpdateCheckUserAgent, nullptr /*caCertFilePath*/, nullptr /*notifyUnbufferedIO*/).readAll(); //throw SysError ++ const std::string response = ""; + return trimCpy(response); } @@ -235,13 +235,13 @@ diff --git a/freefilesync/debian/patches/series b/freefilesync/debian/patches/series index e3ea666..da9adb8 100644 --- a/freefilesync/debian/patches/series +++ b/freefilesync/debian/patches/series @@ -1,6 +1,7 @@ ffs_allow_parallel_ops.patch -# can be either gtk2 or gtk3 -ffs_devuan_gtk2.patch +ffs_devuan.patch +# gtk3 for obs, gtk2 for albion +ffs_devuan_gtk3.patch ffs_no_check_updates.patch ffs_no_wx311.patch ffs_sftp.patch diff --git a/freefilesync/debian/rules b/freefilesync/debian/rules index 6ebd427..b33b50b 100755 --- a/freefilesync/debian/rules +++ b/freefilesync/debian/rules @@ -93,3 +93,7 @@ override_dh_auto_install: convert ${pkgname}/Build/Resources/${prog2name}.png -filter Lanczos -resize 128x128 ${buildroot}${_datadir}/icons/hicolor/128x128/mimetypes/application-x-freefilesync-real.png rm -f file_batch.png file_sync.png + +override_dh_fixperms: + dh_fixperms || : + chmod 0644 ${buildroot}${_datadir}/${appname}/* || : diff --git a/freefilesync/ffs_allow_parallel_ops.patch b/freefilesync/ffs_allow_parallel_ops.patch index e464662..3d8197f 100644 --- a/freefilesync/ffs_allow_parallel_ops.patch +++ b/freefilesync/ffs_allow_parallel_ops.patch @@ -13,13 +13,13 @@ diff -x '*.orig' -x '*.swp' -x '*.rej' -Naur 10.9-0/FreeFileSync/Source/ui/folde return; diff -Naur -x '*.orig' -x '*.rej' 10.9-0/FreeFileSync/Source/ui/sync_cfg.cpp 10.9-1/FreeFileSync/Source/ui/sync_cfg.cpp --- 10.9-0/FreeFileSync/Source/ui/sync_cfg.cpp 2019-02-10 22:01:42.075159451 -0500 -+++ 10.9-1/FreeFileSync/Source/ui/sync_cfg.cpp 2019-02-11 21:25:11.685992654 -0500 -@@ -263,7 +263,7 @@ ++++ 10.20-1/FreeFileSync/Source/ui/sync_cfg.cpp 2019-02-11 21:25:11.685992654 -0500 +@@ -283,7 +283,7 @@ + commandHistoryOut_(commandHistory), globalPairCfg_(globalPairCfg), localPairCfg_(localPairConfig), - showMultipleCfgs_(showMultipleCfgs), --perfPanelActive_(false), -+perfPanelActive_(true), - commandHistItemsMax_(commandHistItemsMax) +-enableExtraFeatures_(false), ++enableExtraFeatures_(true), + showMultipleCfgs_(showMultipleCfgs) { setStandardButtonLayout(*bSizerStdButtons, StdButtons().setAffirmative(m_buttonOkay).setCancel(m_buttonCancel)); diff --git a/freefilesync/ffs_curl.patch b/freefilesync/ffs_curl.patch index 25ad6a6..4c584fe 100644 --- a/freefilesync/ffs_curl.patch +++ b/freefilesync/ffs_curl.patch @@ -21,9 +21,9 @@ diff -r -u 10.17-0/FreeFileSync/Source/afs/ftp.cpp 10.17-1/FreeFileSync/Source/a => https://curl.haxx.se/docs/faq.html#How_do_I_list_the_root_dir_of_an Message: For Fedora <= 30 that has curl < 7.66.0 you need this patch. -diff -x '*.swp' -Naur 10.17-0/FreeFileSync/Source/afs/libcurl/curl_wrap.h 10.17-1/FreeFileSync/Source/afs/libcurl/curl_wrap.h ---- 10.17-0/FreeFileSync/Source/afs/libcurl/curl_wrap.h 2019-10-21 11:23:51.238139296 -0400 -+++ 10.17-1/FreeFileSync/Source/afs/libcurl/curl_wrap.h 2019-10-21 11:37:17.175140528 -0400 +diff -Naur 10.20-0/FreeFileSync/Source/afs/libcurl/curl_wrap.h 10.20-1/FreeFileSync/Source/afs/libcurl/curl_wrap.h +--- 10.20-0/FreeFileSync/Source/afs/libcurl/curl_wrap.h 2019-11-20 07:57:22.146753270 -0500 ++++ 10.20-1/FreeFileSync/Source/afs/libcurl/curl_wrap.h 2020-02-18 07:26:34.057709413 -0500 @@ -16,7 +16,8 @@ //------------------------------------------------- @@ -48,3 +48,32 @@ diff -x '*.swp' -Naur 10.17-0/FreeFileSync/Source/afs/libcurl/curl_wrap.h 10.17- return replaceCpy<std::wstring>(L"Curl status %x.", L"%x", numberTo<std::wstring>(static_cast<int>(sc))); } +diff -Naur 10.20-0/libcurl/curl_wrap.h 10.20-1/libcurl/curl_wrap.h +--- 10.20-0/libcurl/curl_wrap.h 2020-02-18 07:23:30.008454286 -0500 ++++ 10.20-1/libcurl/curl_wrap.h 2020-02-18 07:25:34.397984509 -0500 +@@ -17,7 +17,8 @@ + //------------------------------------------------- + + #ifndef CURLINC_CURL_H +- #error curl.h header guard changed ++ // disable for Fedora <= 30 ++ //#error curl.h header guard changed + #endif + + namespace zen +@@ -134,11 +135,11 @@ + ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_SSL_INVALIDCERTSTATUS); + ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_HTTP2_STREAM); + ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_RECURSIVE_API_CALL); +- ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_AUTH_ERROR); +- ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_HTTP3); +- ZEN_CHECK_CASE_FOR_CONSTANT(CURL_LAST); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_AUTH_ERROR); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_HTTP3); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(CURL_LAST); + } +- static_assert(CURL_LAST == CURLE_HTTP3 + 1); ++ //static_assert(CURL_LAST == CURLE_HTTP3 + 1); + + return replaceCpy<std::wstring>(L"Curl status %x.", L"%x", numberTo<std::wstring>(static_cast<int>(sc))); + } diff --git a/freefilesync/ffs_libssh2.patch b/freefilesync/ffs_libssh2.patch index 0abd660..66c6a88 100644 --- a/freefilesync/ffs_libssh2.patch +++ b/freefilesync/ffs_libssh2.patch @@ -22,15 +22,18 @@ Date: 2019-09-17T13:41:23Z } return replaceCpy<std::wstring>(L"SSH status %x.", L"%x", numberTo<std::wstring>(sc)); } -diff -x '*.swp' -x .git -Naur 10.10-0/FreeFileSync/Source/afs/sftp.cpp 10.10-1/FreeFileSync/Source/afs/sftp.cpp ---- 10.10-0/FreeFileSync/Source/afs/sftp.cpp 2019-03-12 08:09:58.465098982 -0400 -+++ 10.17-1/FreeFileSync/Source/afs/sftp.cpp 2019-10-21 08:46:07.562161269 -0400 -@@ -1588,7 +1588,7 @@ - runSftpCommand(login_, L"libssh2_sftp_mkdir", //throw SysError - [&](const SshSession::Details& sd) //noexcept! - { -- return ::libssh2_sftp_mkdir(sd.sftpChannel, getLibssh2Path(afsPath), LIBSSH2_SFTP_DEFAULT_MODE); -+ return ::libssh2_sftp_mkdir(sd.sftpChannel, getLibssh2Path(afsPath), LIBSSH2_SFTP_S_IRWXU | LIBSSH2_SFTP_S_IRWXG | LIBSSH2_SFTP_S_IRWXO); - //default for newly created directories: 0777 (LIBSSH2_SFTP_S_IRWXU | LIBSSH2_SFTP_S_IRWXG | LIBSSH2_SFTP_S_IRWXO) - }); - } +Message: It appears upstream moved libssh2_wrap, but the above file patches correctly, so we will leave it while adding this new, identical patch. +diff -Naur /usr/src/freefilesync/10.20-0/libssh2/libssh2_wrap.h /usr/src/freefilesync/10.20-1/libssh2/libssh2_wrap.h +--- 10.20-0/libssh2/libssh2_wrap.h 2020-02-15 14:50:08.356617565 -0500 ++++ 10.20-1/libssh2/libssh2_wrap.h 2020-02-15 15:11:25.992842154 -0500 +@@ -172,8 +172,8 @@ + ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_ENCRYPT); + ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_BAD_SOCKET); + ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_KNOWN_HOSTS); +- ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_CHANNEL_WINDOW_FULL); +- ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_KEYFILE_AUTH_FAILED); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_CHANNEL_WINDOW_FULL); ++ //ZEN_CHECK_CASE_FOR_CONSTANT(LIBSSH2_ERROR_KEYFILE_AUTH_FAILED); + } + return replaceCpy<std::wstring>(L"SSH status %x.", L"%x", numberTo<std::wstring>(sc)); + } diff --git a/freefilesync/ffs_no_check_updates.patch b/freefilesync/ffs_no_check_updates.patch index eaff5c4..bb54677 100644 --- a/freefilesync/ffs_no_check_updates.patch +++ b/freefilesync/ffs_no_check_updates.patch @@ -61,10 +61,10 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/version_check.cpp 1 std::string getOnlineVersion(const std::vector<std::pair<std::string, std::string>>& postParams) //throw SysError { -- const std::string buffer = sendHttpPost(Zstr("https://api.freefilesync.org/latest_version"), postParams, -- ffsUpdateCheckUserAgent, nullptr /*caCertFilePath*/, nullptr /*notifyUnbufferedIO*/).readAll(); //throw SysError -+ const std::string buffer = ""; - return trimCpy(buffer); +- const std::string response = sendHttpPost(Zstr("https://api.freefilesync.org/latest_version"), postParams, +- ffsUpdateCheckUserAgent, nullptr /*caCertFilePath*/, nullptr /*notifyUnbufferedIO*/).readAll(); //throw SysError ++ const std::string response = ""; + return trimCpy(response); } @@ -235,13 +235,13 @@ diff --git a/freefilesync/ffs_no_eraseif.patch b/freefilesync/ffs_no_eraseif.patch index d820cad..1df8ef5 100644 --- a/freefilesync/ffs_no_eraseif.patch +++ b/freefilesync/ffs_no_eraseif.patch @@ -257,7 +257,7 @@ diff -x '*.swp' -x .git -x '*.orig' -x '*.rej' -Naur 10.18-1/FreeFileSync/Source diff -x '*.swp' -x .git -x '*.orig' -x '*.rej' -Naur 10.18-1/FreeFileSync/Source/ui/folder_history_box.h 10.18-2/FreeFileSync/Source/ui/folder_history_box.h --- 10.18-1/FreeFileSync/Source/ui/folder_history_box.h 2019-11-20 16:15:55.849668360 -0500 +++ 10.18-2/FreeFileSync/Source/ui/folder_history_box.h 2019-11-20 17:57:30.562558429 -0500 -@@ -41,7 +41,7 @@ +@@ -35,13 +35,13 @@ const Zstring nameTmp = zen::trimCpy(folderPathPhrase); //insert new folder or put it to the front if already existing @@ -265,16 +265,14 @@ diff -x '*.swp' -x .git -x '*.orig' -x '*.rej' -Naur 10.18-1/FreeFileSync/Source + zen::eraseIf(folderPathPhrases_, [&](const Zstring& item) { return equalNoCase(item, nameTmp); }); folderPathPhrases_.insert(folderPathPhrases_.begin(), nameTmp); - -@@ -49,7 +49,7 @@ - folderPathPhrases_.resize(maxSize_); + truncate(); } - void delItem(const Zstring& folderPathPhrase) { std::erase_if(folderPathPhrases_, [&](const Zstring& item) { return equalNoCase(item, folderPathPhrase); }); } + void delItem(const Zstring& folderPathPhrase) { zen::eraseIf(folderPathPhrases_, [&](const Zstring& item) { return equalNoCase(item, folderPathPhrase); }); } private: - size_t maxSize_ = 0; + void truncate() diff -x '*.swp' -x .git -x '*.orig' -x '*.rej' -Naur 10.18-1/FreeFileSync/Source/ui/log_panel.cpp 10.18-2/FreeFileSync/Source/ui/log_panel.cpp --- 10.18-1/FreeFileSync/Source/ui/log_panel.cpp 2019-11-20 16:15:55.852668394 -0500 +++ 10.18-2/FreeFileSync/Source/ui/log_panel.cpp 2019-11-20 17:57:30.562558429 -0500 diff --git a/freefilesync/freefilesync.spec b/freefilesync/freefilesync.spec index 6d1ccf2..f53c693 100644 --- a/freefilesync/freefilesync.spec +++ b/freefilesync/freefilesync.spec @@ -18,7 +18,7 @@ %define libssh2_name libssh2-%{name} %endif Name: freefilesync -Version: 10.19 +Version: 10.20 Release: 1%{?dist} Summary: A file synchronization utility @@ -202,6 +202,9 @@ update-mime-database -n ${_datadir}/mime 1>/dev/null 2>&1 & : %ghost %config %attr(666, -, -) %{_datadir}/%{name}/GlobalSettings.xml %changelog +* Tue Feb 18 2020 B Stack <bgstack15@gmail.com> - 10.20-1 +- version bump + * Fri Dec 27 2019 B Stack <bgstack15@gmail.com> - 10.19-1 - version bump |