summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--freefilesync/debian/.debhelper/generated/freefilesync/installed-by-dh_installdocs0
-rw-r--r--freefilesync/debian/README.Debian5
-rw-r--r--freefilesync/debian/changelog5
-rw-r--r--freefilesync/debian/compat1
-rw-r--r--freefilesync/debian/control27
-rw-r--r--freefilesync/debian/copyright48
-rw-r--r--freefilesync/debian/debhelper-build-stamp1
-rw-r--r--freefilesync/debian/files2
-rw-r--r--freefilesync/debian/freefilesync.debhelper.log3
-rw-r--r--freefilesync/debian/freefilesync.desktop11
-rw-r--r--freefilesync/debian/freefilesync.sharedmimeinfo18
-rw-r--r--freefilesync/debian/freefilesync.substvars3
-rw-r--r--freefilesync/debian/manpages/FreeFileSync.127
-rw-r--r--freefilesync/debian/manpages/RealtimeSync.127
-rw-r--r--freefilesync/debian/patches/devuan.patch24
-rw-r--r--freefilesync/debian/patches/makefile.patch32
-rw-r--r--freefilesync/debian/patches/no_check_updates.patch57
-rw-r--r--freefilesync/debian/patches/no_wx311.patch44
-rw-r--r--freefilesync/debian/patches/series5
-rw-r--r--freefilesync/debian/realtimesync.desktop10
-rwxr-xr-xfreefilesync/debian/rules88
-rw-r--r--freefilesync/debian/source/format1
-rw-r--r--freefilesync/debian/source/local-options2
-rw-r--r--freefilesync/debian/watch3
24 files changed, 444 insertions, 0 deletions
diff --git a/freefilesync/debian/.debhelper/generated/freefilesync/installed-by-dh_installdocs b/freefilesync/debian/.debhelper/generated/freefilesync/installed-by-dh_installdocs
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/freefilesync/debian/.debhelper/generated/freefilesync/installed-by-dh_installdocs
diff --git a/freefilesync/debian/README.Debian b/freefilesync/debian/README.Debian
new file mode 100644
index 0000000..622ce41
--- /dev/null
+++ b/freefilesync/debian/README.Debian
@@ -0,0 +1,5 @@
+freefilesync for Devuan
+
+Initial devuan release.
+
+ -- B Stack <bgstack15@gmail.com> Tue, 29 Jan 2019 09:20:41 -0500
diff --git a/freefilesync/debian/changelog b/freefilesync/debian/changelog
new file mode 100644
index 0000000..4c1d7e8
--- /dev/null
+++ b/freefilesync/debian/changelog
@@ -0,0 +1,5 @@
+freefilesync (10.8-1devuan) manual; urgency=low
+
+ * Initial release.
+
+ -- B Stack <bgstack15@gmail.com> Tue, 29 Jan 2019 09:20:41 -0500
diff --git a/freefilesync/debian/compat b/freefilesync/debian/compat
new file mode 100644
index 0000000..b4de394
--- /dev/null
+++ b/freefilesync/debian/compat
@@ -0,0 +1 @@
+11
diff --git a/freefilesync/debian/control b/freefilesync/debian/control
new file mode 100644
index 0000000..4af779c
--- /dev/null
+++ b/freefilesync/debian/control
@@ -0,0 +1,27 @@
+Source: freefilesync
+Section: utils
+Priority: optional
+Maintainer: B Stack <bgstack15@gmail.com>
+Build-Depends: debhelper (>=11~),
+ autotools-dev,
+ libwxgtk3.0-dev,
+ wx3.0-headers,
+ imagemagick,
+ libboost-thread-dev (>= 1.46),
+ libboost-system-dev (>= 1.46),
+ libgtk2.0-dev,
+Standards-Version: 4.1.4
+Homepage: https://freefilesync.org/
+
+Package: freefilesync
+Architecture: any
+Multi-Arch: foreign
+Depends: ${misc:Depends}, ${shlibs:Depends},
+ xdg-utils
+Description:
+ 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
+ differences between a source and a target folder and transfers only the
+ minimum amount of data needed. FreeFileSync is Open Source software,
+ available for Windows, Linux and macOS.
diff --git a/freefilesync/debian/copyright b/freefilesync/debian/copyright
new file mode 100644
index 0000000..349e6c7
--- /dev/null
+++ b/freefilesync/debian/copyright
@@ -0,0 +1,48 @@
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: FreeFileSync
+Upstream-Contact: ZenJu <zhnmju123@gmx.de>
+Source: http://freefilesync.sourceforge.net/
+
+Files: *
+Copyright: 2010, ZenJu <zhnmju123@gmx.de>
+License: GPL-3
+
+Files: debian/*
+Copyright: 2010, Damien Lecan <dev@dlecan.com>
+License: GPL-3
+
+License: GPL-3
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 3 can be found in the file
+ `/usr/share/common-licenses/GPL-3'.
+
+Files: lib/gtest/*
+Copyright: 2008, Google Inc.
+License: BSD-3-clause
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ .
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following disclaimer
+ in the documentation and/or other materials provided with the
+ distribution.
+ * Neither the name of Google Inc. nor the names of its
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+
diff --git a/freefilesync/debian/debhelper-build-stamp b/freefilesync/debian/debhelper-build-stamp
new file mode 100644
index 0000000..8df3225
--- /dev/null
+++ b/freefilesync/debian/debhelper-build-stamp
@@ -0,0 +1 @@
+freefilesync
diff --git a/freefilesync/debian/files b/freefilesync/debian/files
new file mode 100644
index 0000000..ad90091
--- /dev/null
+++ b/freefilesync/debian/files
@@ -0,0 +1,2 @@
+freefilesync_10.8-1devuan_amd64.buildinfo utils optional
+freefilesync_10.8-1devuan_amd64.deb utils optional
diff --git a/freefilesync/debian/freefilesync.debhelper.log b/freefilesync/debian/freefilesync.debhelper.log
new file mode 100644
index 0000000..278d5fc
--- /dev/null
+++ b/freefilesync/debian/freefilesync.debhelper.log
@@ -0,0 +1,3 @@
+override_dh_auto_install dh_auto_install
+override_dh_auto_install dh_auto_install
+override_dh_auto_install dh_auto_install
diff --git a/freefilesync/debian/freefilesync.desktop b/freefilesync/debian/freefilesync.desktop
new file mode 100644
index 0000000..0f272d1
--- /dev/null
+++ b/freefilesync/debian/freefilesync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Name=FreeFileSync
+Comment=Keep files and folders synchronized
+Exec=FreeFileSync %f
+Terminal=false
+Type=Application
+Icon=FreeFileSync
+MimeType=application/x-freefilesync-ffs;application/x-freefilesync-batch
+Categories=Utility;FileTools;GTK;
+StartupWMClass=FreeFileSync
+StartupNotify=true
diff --git a/freefilesync/debian/freefilesync.sharedmimeinfo b/freefilesync/debian/freefilesync.sharedmimeinfo
new file mode 100644
index 0000000..d54523f
--- /dev/null
+++ b/freefilesync/debian/freefilesync.sharedmimeinfo
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
+ <mime-type type="application/x-freefilesync-ffs">
+ <comment>FreeFileSync configuration file</comment>
+ <comment xml:lang="fr">Fichier de configuration FreeFileSync</comment>
+ <glob pattern="*.ffs_gui"/>
+ </mime-type>
+ <mime-type type="application/x-freefilesync-real">
+ <comment>RealTimeSync configuration file</comment>
+ <comment xml:lang="fr">Fichier de configuration RealTimeSync</comment>
+ <glob pattern="*.ffs_real"/>
+ </mime-type>
+ <mime-type type="application/x-freefilesync-batch">
+ <comment>FreeFileSync batch file</comment>
+ <comment xml:lang="fr">Fichier de batch FreeFileSync</comment>
+ <glob pattern="*.ffs_batch"/>
+ </mime-type>
+</mime-info>
diff --git a/freefilesync/debian/freefilesync.substvars b/freefilesync/debian/freefilesync.substvars
new file mode 100644
index 0000000..d4fe8de
--- /dev/null
+++ b/freefilesync/debian/freefilesync.substvars
@@ -0,0 +1,3 @@
+shlibs:Depends=libatk1.0-0 (>= 1.12.4), libc6 (>= 2.28), libcairo2 (>= 1.2.4), 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), 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/manpages/FreeFileSync.1 b/freefilesync/debian/manpages/FreeFileSync.1
new file mode 100644
index 0000000..3e60546
--- /dev/null
+++ b/freefilesync/debian/manpages/FreeFileSync.1
@@ -0,0 +1,27 @@
+.TH "FreeFileSync" "1" "10 Dec 2011" "" ""
+.SH "NAME"
+FreeFileSync \(em a folder comparison and synchronization tool (GUI)
+.SH "SYNOPSIS"
+
+.PP
+.nf
+FreeFileSync CONFIG_FILE
+.fi
+.PP
+.SH "DESCRIPTION"
+
+.PP
+This is a folder comparison and synchronization tool. It is optimized
+for highest performance and usability without restricted or overloaded
+UI interfaces.
+.PP
+It's key features: Multiple folder pairs, Batch capability, Binary
+comparison, Handle conflicts and propagate deletions, Optimized
+performance, Transactional file copy, ...
+.PP
+.SH "AUTHOR"
+
+.PP
+FreeFileSync was originally written by ZenJu. It is currently maintained
+by Damien Lecan.
+.PP
diff --git a/freefilesync/debian/manpages/RealtimeSync.1 b/freefilesync/debian/manpages/RealtimeSync.1
new file mode 100644
index 0000000..9b1f992
--- /dev/null
+++ b/freefilesync/debian/manpages/RealtimeSync.1
@@ -0,0 +1,27 @@
+.TH "RealtimeSync" "1" "10 Dec 2011" "" ""
+.SH "NAME"
+RealtimeSync \(em a folder comparison and synchronization tool (Batch)
+.SH "SYNOPSIS"
+
+.PP
+.nf
+RealtimeSync CONFIG_FILE
+.fi
+.PP
+.SH "DESCRIPTION"
+
+.PP
+This is a folder comparison and synchronization tool. It is optimized
+for highest performance and usability without restricted or overloaded
+UI interfaces.
+.PP
+It's key features: Multiple folder pairs, Batch capability, Binary
+comparison, Handle conflicts and propagate deletions, Optimized
+performance, Transactional file copy, ...
+.PP
+.SH "AUTHOR"
+
+.PP
+RealtimeSync was originally written by ZenJu. It is currently maintained
+by Damien Lecan.
+.PP
diff --git a/freefilesync/debian/patches/devuan.patch b/freefilesync/debian/patches/devuan.patch
new file mode 100644
index 0000000..abe5389
--- /dev/null
+++ b/freefilesync/debian/patches/devuan.patch
@@ -0,0 +1,24 @@
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp
+--- 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-07 05:03:34.000000000 -0400
++++ 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-29 22:13:40.240595334 -0400
+@@ -106,6 +106,8 @@
+ L" x64";
+ #endif
+
++ build +=
++ L" for Devuan";
+
+ GetSizer()->SetSizeHints(this); //~=Fit() + SetMinSize()
+
+diff -Naur 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp
+--- 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-13 06:58:40.771249592 -0500
++++ 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-16 21:34:30.341077845 -0500
+@@ -66,7 +66,7 @@
+ ZEN_ON_SCOPE_EXIT(wxTheApp->SetAppName(appName));
+
+ //if (isPortableVersion())
+- return appendSeparator(getExeFolderParentPath());
++ return appendSeparator(getExeFolderParentPath()) + appendSeparator("share") + appendSeparator("FreeFileSync");
+ //else //use OS' standard paths
+ // return appendSeparator(utfTo<Zstring>(wxStandardPathsBase::Get().GetResourcesDir()));
+ }
diff --git a/freefilesync/debian/patches/makefile.patch b/freefilesync/debian/patches/makefile.patch
new file mode 100644
index 0000000..b3ff7ff
--- /dev/null
+++ b/freefilesync/debian/patches/makefile.patch
@@ -0,0 +1,32 @@
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/Makefile 10.3-2/FreeFileSync/Source/Makefile
+--- 10.3-0/FreeFileSync/Source/Makefile 2018-08-07 05:03:33.000000000 -0400
++++ 10.3-2/FreeFileSync/Source/Makefile 2018-08-15 22:25:06.694355202 -0400
+@@ -9,7 +9,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
+
+ #Gtk - support recycler/icon loading/no button border/grid scrolling
+ CXXFLAGS += `pkg-config --cflags gtk+-2.0`
+@@ -101,6 +101,7 @@
+ all: ../Build/Bin/$(APPNAME)
+
+ ../Build/Bin/$(APPNAME): $(OBJ_FILES)
++ mkdir -p ../Build/Bin
+ g++ -o $@ $^ $(LINKFLAGS)
+
+ ../Obj/FFS_GCC_Make_Release/ffs/src/%.o : %
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/RealTimeSync/Makefile 10.3-2/FreeFileSync/Source/RealTimeSync/Makefile
+--- 10.3-0/FreeFileSync/Source/RealTimeSync/Makefile 2018-08-07 05:03:33.000000000 -0400
++++ 10.3-2/FreeFileSync/Source/RealTimeSync/Makefile 2018-08-15 22:25:15.968461418 -0400
+@@ -6,7 +6,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
+
+ #Gtk - support "no button border"
+ CXXFLAGS += `pkg-config --cflags gtk+-2.0`
diff --git a/freefilesync/debian/patches/no_check_updates.patch b/freefilesync/debian/patches/no_check_updates.patch
new file mode 100644
index 0000000..99f0c8f
--- /dev/null
+++ b/freefilesync/debian/patches/no_check_updates.patch
@@ -0,0 +1,57 @@
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/ui/main_dlg.cpp 10.3-2/FreeFileSync/Source/ui/main_dlg.cpp
+--- 10.3-0/FreeFileSync/Source/ui/main_dlg.cpp 2018-08-07 05:03:34.000000000 -0400
++++ 10.3-2/FreeFileSync/Source/ui/main_dlg.cpp 2018-08-08 18:50:50.455078387 -0400
+@@ -5004,7 +5004,7 @@
+ globalCfg_.gui.lastUpdateCheck = 0; //reset to GlobalSettings.xml default value!
+
+ m_menuItemCheckVersionAuto->Check(updateCheckActive(globalCfg_.gui.lastUpdateCheck));
+-
++ /*
+ if (shouldRunAutomaticUpdateCheck(globalCfg_.gui.lastUpdateCheck))
+ {
+ flashStatusInformation(_("Searching for program updates..."));
+@@ -5012,6 +5012,7 @@
+ automaticUpdateCheckEval(this, globalCfg_.gui.lastUpdateCheck, globalCfg_.gui.lastOnlineVersion,
+ automaticUpdateCheckRunAsync(automaticUpdateCheckPrepare().get()).get());
+ }
++ */
+ }
+
+
+@@ -5019,7 +5020,7 @@
+ {
+ //execute just once per startup!
+ Disconnect(wxEVT_IDLE, wxIdleEventHandler(MainDialog::OnRegularUpdateCheck), nullptr, this);
+-
++ /*
+ if (shouldRunAutomaticUpdateCheck(globalCfg_.gui.lastUpdateCheck))
+ {
+ flashStatusInformation(_("Searching for program updates..."));
+@@ -5033,6 +5034,7 @@
+ resultAsync.get()); //run on main thread:
+ });
+ }
++ */
+ }
+
+
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/ui/version_check_impl.h 10.3-2/FreeFileSync/Source/ui/version_check_impl.h
+--- 10.3-0/FreeFileSync/Source/ui/version_check_impl.h 2018-08-07 05:03:34.000000000 -0400
++++ 10.3-2/FreeFileSync/Source/ui/version_check_impl.h 2018-08-08 18:50:50.458078415 -0400
+@@ -14,7 +14,7 @@
+
+ namespace fff
+ {
+-inline
++
+ time_t getVersionCheckInactiveId()
+ {
+ //use current version to calculate a changing number for the inactive state near UTC begin, in order to always check for updates after installing a new version
+@@ -38,7 +38,6 @@
+ }
+
+
+-inline
+ time_t getVersionCheckCurrentTime()
+ {
+ return std::time(nullptr);
diff --git a/freefilesync/debian/patches/no_wx311.patch b/freefilesync/debian/patches/no_wx311.patch
new file mode 100644
index 0000000..78ac2a5
--- /dev/null
+++ b/freefilesync/debian/patches/no_wx311.patch
@@ -0,0 +1,44 @@
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp
+--- 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-07 05:03:34.000000000 -0400
++++ 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-08 19:16:54.026727623 -0400
+@@ -984,7 +984,8 @@
+ //setMainInstructionFont(*m_staticTextMain);
+
+ m_bitmapActivation->SetBitmap(getResourceImage(L"website"));
+- m_textCtrlOfflineActivationKey->ForceUpper();
++ // Fedora 27 does not have wxWidgets 3.1.1 yet. https://github.com/wxWidgets/wxWidgets/commit/69b66e9e2e2b8e49e3816acdde079686ce9b0da1
++ //m_textCtrlOfflineActivationKey->ForceUpper();
+
+ m_textCtrlLastError ->ChangeValue(lastErrorMsg);
+ m_textCtrlManualActivationUrl ->ChangeValue(manualActivationUrl);
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/wx+/grid.cpp 10.3-2/wx+/grid.cpp
+--- 10.3-0/wx+/grid.cpp 2018-08-07 05:03:34.000000000 -0400
++++ 10.3-2/wx+/grid.cpp 2018-08-08 19:24:56.849445102 -0400
+@@ -1176,7 +1176,9 @@
+ {
+ if (overlapPix != 0)
+ {
+- const double scrollSpeed = wnd_.ToDIP(overlapPix) * mouseDragSpeedIncScrollU; //unit: [scroll units / sec]
++ // Fedora 28 does not have wxGTK 3.1.1 yet. This probably breaks HiDPI usage
++ //const double scrollSpeed = wnd_.ToDIP(overlapPix) * mouseDragSpeedIncScrollU; //unit: [scroll units / sec]
++ const double scrollSpeed = overlapPix * mouseDragSpeedIncScrollU; //unit: [scroll units / sec]
+ toScroll += scrollSpeed * deltaSecs;
+ }
+ else
+diff -Naur 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp
+--- 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-13 06:58:40.771249592 -0500
++++ 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-14 21:39:14.715702415 -0500
+@@ -85,8 +85,11 @@
+ else //OS standard path (XDG layout): ~/.config/FreeFileSync
+ {
+ //wxBug: wxStandardPaths::GetUserDataDir() does not honor FileLayout_XDG flag
+- wxStandardPaths::Get().SetFileLayout(wxStandardPaths::FileLayout_XDG);
+- cfgFolderPath = appendSeparator(utfTo<Zstring>(wxStandardPaths::Get().GetUserConfigDir())) + "FreeFileSync";
++
++ // Fedora 28 does not have wxGTK 3.1.1 yet.
++ // So subsitute a hard-coded name instead of requesting file layout of XDG
++ //wxStandardPaths::Get().SetFileLayout(wxStandardPaths::FileLayout_XDG);
++ cfgFolderPath = appendSeparator(utfTo<Zstring>(wxStandardPaths::Get().GetUserConfigDir())) + appendSeparator(utfTo<Zstring>(".config")) + "FreeFileSync";
+ }
+
+ #ifdef __GNUC__
diff --git a/freefilesync/debian/patches/series b/freefilesync/debian/patches/series
new file mode 100644
index 0000000..d430762
--- /dev/null
+++ b/freefilesync/debian/patches/series
@@ -0,0 +1,5 @@
+# You must remove unused comment lines for the released package.
+no_check_updates.patch
+devuan.patch
+no_wx311.patch
+makefile.patch
diff --git a/freefilesync/debian/realtimesync.desktop b/freefilesync/debian/realtimesync.desktop
new file mode 100644
index 0000000..4bc586f
--- /dev/null
+++ b/freefilesync/debian/realtimesync.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=RealtimeSync
+Comment=Start synchronization in real time
+Exec=RealTimeSync %f
+Terminal=false
+Type=Application
+Icon=RealTimeSync
+Categories=Utility;FileTools;GTK;
+MimeType=application/x-freefilesync-real
+StartupNotify=true
diff --git a/freefilesync/debian/rules b/freefilesync/debian/rules
new file mode 100755
index 0000000..cc1a493
--- /dev/null
+++ b/freefilesync/debian/rules
@@ -0,0 +1,88 @@
+#!/usr/bin/make -f
+# You must remove unused comment lines for the released package.
+#export DH_VERBOSE = 1
+#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
+#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
+
+export appname=freefilesync
+export pkgname=FreeFileSync
+export prog2name=RealTimeSync
+export debuilddir="debian"
+export debuildappdir="${debuilddir}/${appname}"
+
+%:
+ dh $@
+
+override_dh_auto_clean:
+ dh_auto_clean
+ dh_auto_clean --sourcedirectory=FreeFileSync/Source
+ dh_auto_clean --sourcedirectory=FreeFileSync/Source/RealTimeSync
+ rm -f ${pkgname}.png ${prog2name}.png file_batch.png
+
+override_dh_auto_build:
+ dh_auto_build
+ dh_auto_build --sourcedirectory=FreeFileSync/Source
+ dh_auto_build --sourcedirectory=FreeFileSync/Source/RealTimeSync
+
+override_dh_auto_install:
+ dh_auto_install
+ dh_auto_install --sourcedirectory=FreeFileSync/Source
+ dh_auto_install --sourcedirectory=FreeFileSync/Source/RealTimeSync
+
+ # make extra sure the files are not marked with executable
+ find ${debuildappdir}/share/${pkgname} -type f -exec chmod -x '{}' \; || :
+ #find %{buildroot}%{_datadir}/%{pkgname} -type f -exec chmod -x '{}' \; || :
+
+ # desktop files
+ mkdir -p ${debuildappdir}/usr/share/applications
+ desktop-file-install --dir ${debuildappdir}/usr/share/applications ${debuilddir}/freefilesync.desktop
+ desktop-file-install --dir ${debuildappdir}/usr/share/applications ${debuilddir}/realtimesync.desktop
+
+ # application start script
+ # none
+
+ # man pages
+ # none
+
+ # mimetypes
+ # none
+
+ # icons
+ unzip ${pkgname}/Build/Resources.zip ${pkgname}.png ${prog2name}.png file_batch.png
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/16x16/apps
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/32x32/apps
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/48x48/apps
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/64x64/apps
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/128x128/apps
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/16x16/mimetypes
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/32x32/mimetypes
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/48x48/mimetypes
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/64x64/mimetypes
+ mkdir -p ${debuildappdir}/usr/share/icons/hicolor/128x128/mimetypes
+ convert ${pkgname}.png -filter Lanczos -resize 16x16 ${debuildappdir}/usr/share/icons/hicolor/16x16/apps/${pkgname}.png
+ convert ${pkgname}.png -filter Lanczos -resize 32x32 ${debuildappdir}/usr/share/icons/hicolor/32x32/apps/${pkgname}.png
+ convert ${pkgname}.png -filter Lanczos -resize 48x48 ${debuildappdir}/usr/share/icons/hicolor/48x48/apps/${pkgname}.png
+ convert ${pkgname}.png -filter Lanczos -resize 64x64 ${debuildappdir}/usr/share/icons/hicolor/64x64/apps/${pkgname}.png
+ convert ${pkgname}.png -filter Lanczos -resize 128x128 ${debuildappdir}/usr/share/icons/hicolor/128x128/apps/${pkgname}.png
+ convert ${pkgname}.png -filter Lanczos -resize 16x16 ${debuildappdir}/usr/share/icons/hicolor/16x16/mimetypes/application-x-freefilesync-ffs.png
+ convert ${pkgname}.png -filter Lanczos -resize 32x32 ${debuildappdir}/usr/share/icons/hicolor/32x32/mimetypes/application-x-freefilesync-ffs.png
+ convert ${pkgname}.png -filter Lanczos -resize 48x48 ${debuildappdir}/usr/share/icons/hicolor/48x48/mimetypes/application-x-freefilesync-ffs.png
+ convert ${pkgname}.png -filter Lanczos -resize 64x64 ${debuildappdir}/usr/share/icons/hicolor/64x64/mimetypes/application-x-freefilesync-ffs.png
+ convert ${pkgname}.png -filter Lanczos -resize 128x128 ${debuildappdir}/usr/share/icons/hicolor/128x128/mimetypes/application-x-freefilesync-ffs.png
+ convert ${prog2name}.png -filter Lanczos -resize 16x16 ${debuildappdir}/usr/share/icons/hicolor/16x16/apps/${prog2name}.png
+ convert ${prog2name}.png -filter Lanczos -resize 32x32 ${debuildappdir}/usr/share/icons/hicolor/32x32/apps/${prog2name}.png
+ convert ${prog2name}.png -filter Lanczos -resize 48x48 ${debuildappdir}/usr/share/icons/hicolor/48x48/apps/${prog2name}.png
+ convert ${prog2name}.png -filter Lanczos -resize 64x64 ${debuildappdir}/usr/share/icons/hicolor/64x64/apps/${prog2name}.png
+ convert ${prog2name}.png -filter Lanczos -resize 128x128 ${debuildappdir}/usr/share/icons/hicolor/128x128/apps/${prog2name}.png
+ convert ${prog2name}.png -filter Lanczos -resize 16x16 ${debuildappdir}/usr/share/icons/hicolor/16x16/mimetypes/application-x-freefilesync-real.png
+ convert ${prog2name}.png -filter Lanczos -resize 32x32 ${debuildappdir}/usr/share/icons/hicolor/32x32/mimetypes/application-x-freefilesync-real.png
+ convert ${prog2name}.png -filter Lanczos -resize 48x48 ${debuildappdir}/usr/share/icons/hicolor/48x48/mimetypes/application-x-freefilesync-real.png
+ convert ${prog2name}.png -filter Lanczos -resize 64x64 ${debuildappdir}/usr/share/icons/hicolor/64x64/mimetypes/application-x-freefilesync-real.png
+ convert ${prog2name}.png -filter Lanczos -resize 128x128 ${debuildappdir}/usr/share/icons/hicolor/128x128/mimetypes/application-x-freefilesync-real.png
+ convert file_batch.png -filter Lanczos -resize 16x16 ${debuildappdir}/usr/share/icons/hicolor/16x16/mimetypes/application-x-freefilesync-batch.png
+ convert file_batch.png -filter Lanczos -resize 32x32 ${debuildappdir}/usr/share/icons/hicolor/32x32/mimetypes/application-x-freefilesync-batch.png
+ convert file_batch.png -filter Lanczos -resize 48x48 ${debuildappdir}/usr/share/icons/hicolor/48x48/mimetypes/application-x-freefilesync-batch.png
+ convert file_batch.png -filter Lanczos -resize 64x64 ${debuildappdir}/usr/share/icons/hicolor/64x64/mimetypes/application-x-freefilesync-batch.png
+ convert file_batch.png -filter Lanczos -resize 128x128 ${debuildappdir}/usr/share/icons/hicolor/128x128/mimetypes/application-x-freefilesync-batch.png
+ rm -f ${pkgname}.png ${prog2name}.png file_batch.png
diff --git a/freefilesync/debian/source/format b/freefilesync/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/freefilesync/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/freefilesync/debian/source/local-options b/freefilesync/debian/source/local-options
new file mode 100644
index 0000000..00131ee
--- /dev/null
+++ b/freefilesync/debian/source/local-options
@@ -0,0 +1,2 @@
+#abort-on-upstream-changes
+#unapply-patches
diff --git a/freefilesync/debian/watch b/freefilesync/debian/watch
new file mode 100644
index 0000000..880dfa8
--- /dev/null
+++ b/freefilesync/debian/watch
@@ -0,0 +1,3 @@
+# You must remove unused comment lines for the released package.
+version=3
+https://gitlab.com/opensource-tracking/FreeFileSync/-/archive/([\d\.]+)/FreeFileSync-([\d\.]+).tar.gz
bgstack15