Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] new package: FreeFileSync
@ 2024-04-20 11:39 Nicop06
  2024-04-21 21:45 ` [PR PATCH] [Updated] " Nicop06
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Nicop06 @ 2024-04-20 11:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 651 bytes --]

There is a new pull request by Nicop06 against master on the void-packages repository

https://github.com/Nicop06/void-packages FreeFileSync
https://github.com/void-linux/void-packages/pull/49934

new package: FreeFileSync
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64)


A patch file from https://github.com/void-linux/void-packages/pull/49934.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-FreeFileSync-49934.patch --]
[-- Type: text/x-diff, Size: 8502 bytes --]

From 9fd647f7592da32313463119dd6920e780a60f81 Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Wed, 17 Mar 2021 01:09:40 +0000
Subject: [PATCH] new package: FreeFileSync

---
 .../FreeFileSync/files/FreeFileSync.desktop   | 11 +++++
 .../FreeFileSync/files/RealTimeSync.desktop   | 11 +++++
 .../patches/allow_wxUSE_EXCEPTIONS.patch      | 30 ++++++++++++
 .../remove_namespace_prefix_for_gobject.patch | 13 +++++
 srcpkgs/FreeFileSync/patches/use_gtk3.patch   | 32 +++++++++++++
 srcpkgs/FreeFileSync/template                 | 48 +++++++++++++++++++
 6 files changed, 145 insertions(+)
 create mode 100644 srcpkgs/FreeFileSync/files/FreeFileSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/files/RealTimeSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/use_gtk3.patch
 create mode 100644 srcpkgs/FreeFileSync/template

diff --git a/srcpkgs/FreeFileSync/files/FreeFileSync.desktop b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
new file mode 100644
index 00000000000000..b94e4799d12316
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=FreeFileSync
+GenericName=Folder Comparison and Synchronization
+GenericName[de_DE]=Ordnervergleich und Synchronisation
+Exec=FreeFileSync %F
+Icon=/usr/share/pixmaps/FreeFileSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/files/RealTimeSync.desktop b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
new file mode 100644
index 00000000000000..dfd533ffd88a71
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=RealTimeSync
+GenericName=Automated Synchronization
+GenericName[de_DE]=Automatisierte Synchronisation
+Exec=RealTimeSync %f
+Icon=/usr/share/pixmaps/RealTimeSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
new file mode 100644
index 00000000000000..51f011d89faf00
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
@@ -0,0 +1,30 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+@@ -209,10 +209,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(FfsExitCode::success); //process exit code
+Index: FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+@@ -243,10 +243,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(exitCode_);
diff --git a/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
new file mode 100644
index 00000000000000..a8ebacfcf8a47a
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
@@ -0,0 +1,13 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/base/icon_loader.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+@@ -227,7 +227,7 @@ FileIconHolder fff::getFileIcon(const Zs
+     //the remaining icon types won't block!
+     assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+ 
+-    ::g_object_ref(gicon);                 //pass ownership
++    g_object_ref(gicon);                 //pass ownership
+     return FileIconHolder(gicon, maxSize); //
+ 
+ }
diff --git a/srcpkgs/FreeFileSync/patches/use_gtk3.patch b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
new file mode 100644
index 00000000000000..9d622ab7133d66
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
@@ -0,0 +1,32 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/Makefile
+@@ -17,9 +17,8 @@ LDFLAGS += `pkg-config --libs   libcurl`
+ CXXFLAGS  += `pkg-config --cflags libssh2`
+ LDFLAGS += `pkg-config --libs   libssh2`
+ 
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ #support for SELinux (optional)
+ SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES)
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+@@ -8,9 +8,8 @@ CXXFLAGS += -std=c++23 -pipe -DWXINTL_NO
+ LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
+ 
+ #Gtk - support "no button border"
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ cppFiles=
+ cppFiles+=application.cpp
diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
new file mode 100644
index 00000000000000..31bd1af2a1f017
--- /dev/null
+++ b/srcpkgs/FreeFileSync/template
@@ -0,0 +1,48 @@
+# Template file for 'FreeFileSync'
+pkgname=FreeFileSync
+version=13.5
+revision=1
+archs="i686 x86_64"
+create_wrksrc=yes
+build_style=gnu-makefile
+hostmakedepends="unzip wget"
+makedepends="pkg-config libglib-devel wxWidgets-gtk3-devel libcurl-devel openssl-devel libssh2-devel"
+depends="wxWidgets-gtk3 libcurl libssh2 openssl"
+short_desc="Backup software to synchronize files and folders"
+maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://freefilesync.org"
+distfiles="${homepage}/download/FreeFileSync_${version}_Source.zip"
+checksum=@264c9ce29cdbce601707b4514661e0c2c5fe45b67185f9ba0599a95c7c6fab92
+fetch_cmd="wget"
+
+CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"
+
+nopie_files="/opt/${pkgname}/Bin/FreeFileSync /opt/${pkgname}/Bin/RealTimeSync"
+
+post_patch() {
+	sed -i 's/wx-config/wx-config-gtk3/' FreeFileSync/Source/{,RealTimeSync/}Makefile
+}
+
+do_build() {
+	make ${makejobs} exeName=FreeFileSync -C FreeFileSync/Source
+	make ${makejobs} exeName=RealTimeSync -C FreeFileSync/Source/RealTimeSync
+	unzip FreeFileSync/Build/Resources/Icons.zip FreeFileSync.png RealTimeSync.png -d FreeFileSync/Build
+}
+
+do_install() {
+	vmkdir opt/${pkgname}
+	vcopy FreeFileSync/Build/Bin opt/${pkgname}
+	vcopy FreeFileSync/Build/Resources opt/${pkgname}
+
+	vmkdir usr/share/pixmaps
+	vinstall FreeFileSync/Build/FreeFileSync.png 0644 usr/share/pixmaps
+	vinstall FreeFileSync/Build/RealTimeSync.png 0644 usr/share/pixmaps
+
+	vmkdir usr/share/applications
+	vinstall ${FILESDIR}/FreeFileSync.desktop 0644 usr/share/applications
+	vinstall ${FILESDIR}/RealTimeSync.desktop 0644 usr/share/applications
+
+	vmkdir usr/bin
+	ln -s /opt/FreeFileSync/Bin/{FreeFileSync,RealTimeSync} ${DESTDIR}/usr/bin
+}

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] new package: FreeFileSync
  2024-04-20 11:39 [PR PATCH] new package: FreeFileSync Nicop06
@ 2024-04-21 21:45 ` Nicop06
  2024-04-21 21:55 ` Nicop06
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Nicop06 @ 2024-04-21 21:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 656 bytes --]

There is an updated pull request by Nicop06 against master on the void-packages repository

https://github.com/Nicop06/void-packages FreeFileSync
https://github.com/void-linux/void-packages/pull/49934

new package: FreeFileSync
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64)


A patch file from https://github.com/void-linux/void-packages/pull/49934.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-FreeFileSync-49934.patch --]
[-- Type: text/x-diff, Size: 8500 bytes --]

From 53581f30bb93391bad4a6d9e1e4e6acb9bbd9c4e Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Wed, 17 Mar 2021 01:09:40 +0000
Subject: [PATCH] new package: FreeFileSync

---
 .../FreeFileSync/files/FreeFileSync.desktop   | 11 +++++
 .../FreeFileSync/files/RealTimeSync.desktop   | 11 +++++
 .../patches/allow_wxUSE_EXCEPTIONS.patch      | 30 ++++++++++++
 .../remove_namespace_prefix_for_gobject.patch | 13 +++++
 srcpkgs/FreeFileSync/patches/use_gtk3.patch   | 32 +++++++++++++
 srcpkgs/FreeFileSync/template                 | 48 +++++++++++++++++++
 6 files changed, 145 insertions(+)
 create mode 100644 srcpkgs/FreeFileSync/files/FreeFileSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/files/RealTimeSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/use_gtk3.patch
 create mode 100644 srcpkgs/FreeFileSync/template

diff --git a/srcpkgs/FreeFileSync/files/FreeFileSync.desktop b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
new file mode 100644
index 00000000000000..b94e4799d12316
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=FreeFileSync
+GenericName=Folder Comparison and Synchronization
+GenericName[de_DE]=Ordnervergleich und Synchronisation
+Exec=FreeFileSync %F
+Icon=/usr/share/pixmaps/FreeFileSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/files/RealTimeSync.desktop b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
new file mode 100644
index 00000000000000..dfd533ffd88a71
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=RealTimeSync
+GenericName=Automated Synchronization
+GenericName[de_DE]=Automatisierte Synchronisation
+Exec=RealTimeSync %f
+Icon=/usr/share/pixmaps/RealTimeSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
new file mode 100644
index 00000000000000..51f011d89faf00
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
@@ -0,0 +1,30 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+@@ -209,10 +209,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(FfsExitCode::success); //process exit code
+Index: FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+@@ -243,10 +243,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(exitCode_);
diff --git a/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
new file mode 100644
index 00000000000000..a8ebacfcf8a47a
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
@@ -0,0 +1,13 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/base/icon_loader.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+@@ -227,7 +227,7 @@ FileIconHolder fff::getFileIcon(const Zs
+     //the remaining icon types won't block!
+     assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+ 
+-    ::g_object_ref(gicon);                 //pass ownership
++    g_object_ref(gicon);                 //pass ownership
+     return FileIconHolder(gicon, maxSize); //
+ 
+ }
diff --git a/srcpkgs/FreeFileSync/patches/use_gtk3.patch b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
new file mode 100644
index 00000000000000..9d622ab7133d66
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
@@ -0,0 +1,32 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/Makefile
+@@ -17,9 +17,8 @@ LDFLAGS += `pkg-config --libs   libcurl`
+ CXXFLAGS  += `pkg-config --cflags libssh2`
+ LDFLAGS += `pkg-config --libs   libssh2`
+ 
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ #support for SELinux (optional)
+ SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES)
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+@@ -8,9 +8,8 @@ CXXFLAGS += -std=c++23 -pipe -DWXINTL_NO
+ LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
+ 
+ #Gtk - support "no button border"
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ cppFiles=
+ cppFiles+=application.cpp
diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
new file mode 100644
index 00000000000000..c8865f1c8f8055
--- /dev/null
+++ b/srcpkgs/FreeFileSync/template
@@ -0,0 +1,48 @@
+# Template file for 'FreeFileSync'
+pkgname=FreeFileSync
+version=13.5
+revision=1
+archs="i686 x86_64"
+create_wrksrc=yes
+build_style=gnu-makefile
+hostmakedepends="unzip wget"
+makedepends="pkg-config libglib-devel wxWidgets-gtk3-devel libcurl-devel openssl-devel libssh2-devel"
+depends="wxWidgets-gtk3 libcurl libssh2 openssl"
+short_desc="Backup software to synchronize files and folders"
+maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://freefilesync.org"
+distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
+checksum=@264c9ce29cdbce601707b4514661e0c2c5fe45b67185f9ba0599a95c7c6fab92
+fetch_cmd="wget"
+
+CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"
+
+nopie_files="/opt/${pkgname}/Bin/FreeFileSync /opt/${pkgname}/Bin/RealTimeSync"
+
+post_patch() {
+	sed -i 's/wx-config/wx-config-gtk3/' FreeFileSync/Source/{,RealTimeSync/}Makefile
+}
+
+do_build() {
+	make ${makejobs} exeName=FreeFileSync -C FreeFileSync/Source
+	make ${makejobs} exeName=RealTimeSync -C FreeFileSync/Source/RealTimeSync
+	unzip FreeFileSync/Build/Resources/Icons.zip FreeFileSync.png RealTimeSync.png -d FreeFileSync/Build
+}
+
+do_install() {
+	vmkdir opt/${pkgname}
+	vcopy FreeFileSync/Build/Bin opt/${pkgname}
+	vcopy FreeFileSync/Build/Resources opt/${pkgname}
+
+	vmkdir usr/share/pixmaps
+	vinstall FreeFileSync/Build/FreeFileSync.png 0644 usr/share/pixmaps
+	vinstall FreeFileSync/Build/RealTimeSync.png 0644 usr/share/pixmaps
+
+	vmkdir usr/share/applications
+	vinstall ${FILESDIR}/FreeFileSync.desktop 0644 usr/share/applications
+	vinstall ${FILESDIR}/RealTimeSync.desktop 0644 usr/share/applications
+
+	vmkdir usr/bin
+	ln -s /opt/FreeFileSync/Bin/{FreeFileSync,RealTimeSync} ${DESTDIR}/usr/bin
+}

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] new package: FreeFileSync
  2024-04-20 11:39 [PR PATCH] new package: FreeFileSync Nicop06
  2024-04-21 21:45 ` [PR PATCH] [Updated] " Nicop06
@ 2024-04-21 21:55 ` Nicop06
  2024-04-21 22:41 ` Nicop06
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Nicop06 @ 2024-04-21 21:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 656 bytes --]

There is an updated pull request by Nicop06 against master on the void-packages repository

https://github.com/Nicop06/void-packages FreeFileSync
https://github.com/void-linux/void-packages/pull/49934

new package: FreeFileSync
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64)


A patch file from https://github.com/void-linux/void-packages/pull/49934.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-FreeFileSync-49934.patch --]
[-- Type: text/x-diff, Size: 9421 bytes --]

From 53581f30bb93391bad4a6d9e1e4e6acb9bbd9c4e Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Wed, 17 Mar 2021 01:09:40 +0000
Subject: [PATCH 1/2] new package: FreeFileSync

---
 .../FreeFileSync/files/FreeFileSync.desktop   | 11 +++++
 .../FreeFileSync/files/RealTimeSync.desktop   | 11 +++++
 .../patches/allow_wxUSE_EXCEPTIONS.patch      | 30 ++++++++++++
 .../remove_namespace_prefix_for_gobject.patch | 13 +++++
 srcpkgs/FreeFileSync/patches/use_gtk3.patch   | 32 +++++++++++++
 srcpkgs/FreeFileSync/template                 | 48 +++++++++++++++++++
 6 files changed, 145 insertions(+)
 create mode 100644 srcpkgs/FreeFileSync/files/FreeFileSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/files/RealTimeSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/use_gtk3.patch
 create mode 100644 srcpkgs/FreeFileSync/template

diff --git a/srcpkgs/FreeFileSync/files/FreeFileSync.desktop b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
new file mode 100644
index 00000000000000..b94e4799d12316
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=FreeFileSync
+GenericName=Folder Comparison and Synchronization
+GenericName[de_DE]=Ordnervergleich und Synchronisation
+Exec=FreeFileSync %F
+Icon=/usr/share/pixmaps/FreeFileSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/files/RealTimeSync.desktop b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
new file mode 100644
index 00000000000000..dfd533ffd88a71
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=RealTimeSync
+GenericName=Automated Synchronization
+GenericName[de_DE]=Automatisierte Synchronisation
+Exec=RealTimeSync %f
+Icon=/usr/share/pixmaps/RealTimeSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
new file mode 100644
index 00000000000000..51f011d89faf00
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
@@ -0,0 +1,30 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+@@ -209,10 +209,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(FfsExitCode::success); //process exit code
+Index: FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+@@ -243,10 +243,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(exitCode_);
diff --git a/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
new file mode 100644
index 00000000000000..a8ebacfcf8a47a
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
@@ -0,0 +1,13 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/base/icon_loader.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+@@ -227,7 +227,7 @@ FileIconHolder fff::getFileIcon(const Zs
+     //the remaining icon types won't block!
+     assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+ 
+-    ::g_object_ref(gicon);                 //pass ownership
++    g_object_ref(gicon);                 //pass ownership
+     return FileIconHolder(gicon, maxSize); //
+ 
+ }
diff --git a/srcpkgs/FreeFileSync/patches/use_gtk3.patch b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
new file mode 100644
index 00000000000000..9d622ab7133d66
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
@@ -0,0 +1,32 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/Makefile
+@@ -17,9 +17,8 @@ LDFLAGS += `pkg-config --libs   libcurl`
+ CXXFLAGS  += `pkg-config --cflags libssh2`
+ LDFLAGS += `pkg-config --libs   libssh2`
+ 
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ #support for SELinux (optional)
+ SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES)
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+@@ -8,9 +8,8 @@ CXXFLAGS += -std=c++23 -pipe -DWXINTL_NO
+ LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
+ 
+ #Gtk - support "no button border"
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ cppFiles=
+ cppFiles+=application.cpp
diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
new file mode 100644
index 00000000000000..c8865f1c8f8055
--- /dev/null
+++ b/srcpkgs/FreeFileSync/template
@@ -0,0 +1,48 @@
+# Template file for 'FreeFileSync'
+pkgname=FreeFileSync
+version=13.5
+revision=1
+archs="i686 x86_64"
+create_wrksrc=yes
+build_style=gnu-makefile
+hostmakedepends="unzip wget"
+makedepends="pkg-config libglib-devel wxWidgets-gtk3-devel libcurl-devel openssl-devel libssh2-devel"
+depends="wxWidgets-gtk3 libcurl libssh2 openssl"
+short_desc="Backup software to synchronize files and folders"
+maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://freefilesync.org"
+distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
+checksum=@264c9ce29cdbce601707b4514661e0c2c5fe45b67185f9ba0599a95c7c6fab92
+fetch_cmd="wget"
+
+CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"
+
+nopie_files="/opt/${pkgname}/Bin/FreeFileSync /opt/${pkgname}/Bin/RealTimeSync"
+
+post_patch() {
+	sed -i 's/wx-config/wx-config-gtk3/' FreeFileSync/Source/{,RealTimeSync/}Makefile
+}
+
+do_build() {
+	make ${makejobs} exeName=FreeFileSync -C FreeFileSync/Source
+	make ${makejobs} exeName=RealTimeSync -C FreeFileSync/Source/RealTimeSync
+	unzip FreeFileSync/Build/Resources/Icons.zip FreeFileSync.png RealTimeSync.png -d FreeFileSync/Build
+}
+
+do_install() {
+	vmkdir opt/${pkgname}
+	vcopy FreeFileSync/Build/Bin opt/${pkgname}
+	vcopy FreeFileSync/Build/Resources opt/${pkgname}
+
+	vmkdir usr/share/pixmaps
+	vinstall FreeFileSync/Build/FreeFileSync.png 0644 usr/share/pixmaps
+	vinstall FreeFileSync/Build/RealTimeSync.png 0644 usr/share/pixmaps
+
+	vmkdir usr/share/applications
+	vinstall ${FILESDIR}/FreeFileSync.desktop 0644 usr/share/applications
+	vinstall ${FILESDIR}/RealTimeSync.desktop 0644 usr/share/applications
+
+	vmkdir usr/bin
+	ln -s /opt/FreeFileSync/Bin/{FreeFileSync,RealTimeSync} ${DESTDIR}/usr/bin
+}

From 414e98b29b1fad3b870617a7fa9fed703b012cf7 Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Sun, 21 Apr 2024 22:55:15 +0100
Subject: [PATCH 2/2] --amend

---
 srcpkgs/FreeFileSync/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
index c8865f1c8f8055..e4b5695f2ddb50 100644
--- a/srcpkgs/FreeFileSync/template
+++ b/srcpkgs/FreeFileSync/template
@@ -13,7 +13,7 @@ maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://freefilesync.org"
 distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
-checksum=@264c9ce29cdbce601707b4514661e0c2c5fe45b67185f9ba0599a95c7c6fab92
+checksum=f00b7c4286c0411da64271631523d3904bb198ff4cf2020d3f4a87dbc277ca76
 fetch_cmd="wget"
 
 CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] new package: FreeFileSync
  2024-04-20 11:39 [PR PATCH] new package: FreeFileSync Nicop06
  2024-04-21 21:45 ` [PR PATCH] [Updated] " Nicop06
  2024-04-21 21:55 ` Nicop06
@ 2024-04-21 22:41 ` Nicop06
  2024-04-21 22:41 ` Nicop06
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Nicop06 @ 2024-04-21 22:41 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 656 bytes --]

There is an updated pull request by Nicop06 against master on the void-packages repository

https://github.com/Nicop06/void-packages FreeFileSync
https://github.com/void-linux/void-packages/pull/49934

new package: FreeFileSync
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64)


A patch file from https://github.com/void-linux/void-packages/pull/49934.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-FreeFileSync-49934.patch --]
[-- Type: text/x-diff, Size: 9421 bytes --]

From 53581f30bb93391bad4a6d9e1e4e6acb9bbd9c4e Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Wed, 17 Mar 2021 01:09:40 +0000
Subject: [PATCH 1/2] new package: FreeFileSync

---
 .../FreeFileSync/files/FreeFileSync.desktop   | 11 +++++
 .../FreeFileSync/files/RealTimeSync.desktop   | 11 +++++
 .../patches/allow_wxUSE_EXCEPTIONS.patch      | 30 ++++++++++++
 .../remove_namespace_prefix_for_gobject.patch | 13 +++++
 srcpkgs/FreeFileSync/patches/use_gtk3.patch   | 32 +++++++++++++
 srcpkgs/FreeFileSync/template                 | 48 +++++++++++++++++++
 6 files changed, 145 insertions(+)
 create mode 100644 srcpkgs/FreeFileSync/files/FreeFileSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/files/RealTimeSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/use_gtk3.patch
 create mode 100644 srcpkgs/FreeFileSync/template

diff --git a/srcpkgs/FreeFileSync/files/FreeFileSync.desktop b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
new file mode 100644
index 00000000000000..b94e4799d12316
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=FreeFileSync
+GenericName=Folder Comparison and Synchronization
+GenericName[de_DE]=Ordnervergleich und Synchronisation
+Exec=FreeFileSync %F
+Icon=/usr/share/pixmaps/FreeFileSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/files/RealTimeSync.desktop b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
new file mode 100644
index 00000000000000..dfd533ffd88a71
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=RealTimeSync
+GenericName=Automated Synchronization
+GenericName[de_DE]=Automatisierte Synchronisation
+Exec=RealTimeSync %f
+Icon=/usr/share/pixmaps/RealTimeSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
new file mode 100644
index 00000000000000..51f011d89faf00
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
@@ -0,0 +1,30 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+@@ -209,10 +209,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(FfsExitCode::success); //process exit code
+Index: FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+@@ -243,10 +243,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(exitCode_);
diff --git a/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
new file mode 100644
index 00000000000000..a8ebacfcf8a47a
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
@@ -0,0 +1,13 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/base/icon_loader.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+@@ -227,7 +227,7 @@ FileIconHolder fff::getFileIcon(const Zs
+     //the remaining icon types won't block!
+     assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+ 
+-    ::g_object_ref(gicon);                 //pass ownership
++    g_object_ref(gicon);                 //pass ownership
+     return FileIconHolder(gicon, maxSize); //
+ 
+ }
diff --git a/srcpkgs/FreeFileSync/patches/use_gtk3.patch b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
new file mode 100644
index 00000000000000..9d622ab7133d66
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
@@ -0,0 +1,32 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/Makefile
+@@ -17,9 +17,8 @@ LDFLAGS += `pkg-config --libs   libcurl`
+ CXXFLAGS  += `pkg-config --cflags libssh2`
+ LDFLAGS += `pkg-config --libs   libssh2`
+ 
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ #support for SELinux (optional)
+ SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES)
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+@@ -8,9 +8,8 @@ CXXFLAGS += -std=c++23 -pipe -DWXINTL_NO
+ LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
+ 
+ #Gtk - support "no button border"
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ cppFiles=
+ cppFiles+=application.cpp
diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
new file mode 100644
index 00000000000000..c8865f1c8f8055
--- /dev/null
+++ b/srcpkgs/FreeFileSync/template
@@ -0,0 +1,48 @@
+# Template file for 'FreeFileSync'
+pkgname=FreeFileSync
+version=13.5
+revision=1
+archs="i686 x86_64"
+create_wrksrc=yes
+build_style=gnu-makefile
+hostmakedepends="unzip wget"
+makedepends="pkg-config libglib-devel wxWidgets-gtk3-devel libcurl-devel openssl-devel libssh2-devel"
+depends="wxWidgets-gtk3 libcurl libssh2 openssl"
+short_desc="Backup software to synchronize files and folders"
+maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://freefilesync.org"
+distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
+checksum=@264c9ce29cdbce601707b4514661e0c2c5fe45b67185f9ba0599a95c7c6fab92
+fetch_cmd="wget"
+
+CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"
+
+nopie_files="/opt/${pkgname}/Bin/FreeFileSync /opt/${pkgname}/Bin/RealTimeSync"
+
+post_patch() {
+	sed -i 's/wx-config/wx-config-gtk3/' FreeFileSync/Source/{,RealTimeSync/}Makefile
+}
+
+do_build() {
+	make ${makejobs} exeName=FreeFileSync -C FreeFileSync/Source
+	make ${makejobs} exeName=RealTimeSync -C FreeFileSync/Source/RealTimeSync
+	unzip FreeFileSync/Build/Resources/Icons.zip FreeFileSync.png RealTimeSync.png -d FreeFileSync/Build
+}
+
+do_install() {
+	vmkdir opt/${pkgname}
+	vcopy FreeFileSync/Build/Bin opt/${pkgname}
+	vcopy FreeFileSync/Build/Resources opt/${pkgname}
+
+	vmkdir usr/share/pixmaps
+	vinstall FreeFileSync/Build/FreeFileSync.png 0644 usr/share/pixmaps
+	vinstall FreeFileSync/Build/RealTimeSync.png 0644 usr/share/pixmaps
+
+	vmkdir usr/share/applications
+	vinstall ${FILESDIR}/FreeFileSync.desktop 0644 usr/share/applications
+	vinstall ${FILESDIR}/RealTimeSync.desktop 0644 usr/share/applications
+
+	vmkdir usr/bin
+	ln -s /opt/FreeFileSync/Bin/{FreeFileSync,RealTimeSync} ${DESTDIR}/usr/bin
+}

From fd3a7532100d3848c1a91c6f83b874c5a549c83d Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Sun, 21 Apr 2024 22:55:15 +0100
Subject: [PATCH 2/2] --amend

---
 srcpkgs/FreeFileSync/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
index c8865f1c8f8055..e4b5695f2ddb50 100644
--- a/srcpkgs/FreeFileSync/template
+++ b/srcpkgs/FreeFileSync/template
@@ -13,7 +13,7 @@ maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://freefilesync.org"
 distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
-checksum=@264c9ce29cdbce601707b4514661e0c2c5fe45b67185f9ba0599a95c7c6fab92
+checksum=f00b7c4286c0411da64271631523d3904bb198ff4cf2020d3f4a87dbc277ca76
 fetch_cmd="wget"
 
 CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] new package: FreeFileSync
  2024-04-20 11:39 [PR PATCH] new package: FreeFileSync Nicop06
                   ` (2 preceding siblings ...)
  2024-04-21 22:41 ` Nicop06
@ 2024-04-21 22:41 ` Nicop06
  2024-04-22  9:31 ` Nicop06
  2024-04-22 20:13 ` Nicop06
  5 siblings, 0 replies; 7+ messages in thread
From: Nicop06 @ 2024-04-21 22:41 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 656 bytes --]

There is an updated pull request by Nicop06 against master on the void-packages repository

https://github.com/Nicop06/void-packages FreeFileSync
https://github.com/void-linux/void-packages/pull/49934

new package: FreeFileSync
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64)


A patch file from https://github.com/void-linux/void-packages/pull/49934.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-FreeFileSync-49934.patch --]
[-- Type: text/x-diff, Size: 8499 bytes --]

From 8e3a2c1d6ed0516a01bf3f37fc67ac5c96c6c520 Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Wed, 17 Mar 2021 01:09:40 +0000
Subject: [PATCH] new package: FreeFileSync

---
 .../FreeFileSync/files/FreeFileSync.desktop   | 11 +++++
 .../FreeFileSync/files/RealTimeSync.desktop   | 11 +++++
 .../patches/allow_wxUSE_EXCEPTIONS.patch      | 30 ++++++++++++
 .../remove_namespace_prefix_for_gobject.patch | 13 +++++
 srcpkgs/FreeFileSync/patches/use_gtk3.patch   | 32 +++++++++++++
 srcpkgs/FreeFileSync/template                 | 48 +++++++++++++++++++
 6 files changed, 145 insertions(+)
 create mode 100644 srcpkgs/FreeFileSync/files/FreeFileSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/files/RealTimeSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/use_gtk3.patch
 create mode 100644 srcpkgs/FreeFileSync/template

diff --git a/srcpkgs/FreeFileSync/files/FreeFileSync.desktop b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
new file mode 100644
index 00000000000000..b94e4799d12316
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=FreeFileSync
+GenericName=Folder Comparison and Synchronization
+GenericName[de_DE]=Ordnervergleich und Synchronisation
+Exec=FreeFileSync %F
+Icon=/usr/share/pixmaps/FreeFileSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/files/RealTimeSync.desktop b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
new file mode 100644
index 00000000000000..dfd533ffd88a71
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=RealTimeSync
+GenericName=Automated Synchronization
+GenericName[de_DE]=Automatisierte Synchronisation
+Exec=RealTimeSync %f
+Icon=/usr/share/pixmaps/RealTimeSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
new file mode 100644
index 00000000000000..51f011d89faf00
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
@@ -0,0 +1,30 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+@@ -209,10 +209,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(FfsExitCode::success); //process exit code
+Index: FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+@@ -243,10 +243,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(exitCode_);
diff --git a/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
new file mode 100644
index 00000000000000..a8ebacfcf8a47a
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
@@ -0,0 +1,13 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/base/icon_loader.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+@@ -227,7 +227,7 @@ FileIconHolder fff::getFileIcon(const Zs
+     //the remaining icon types won't block!
+     assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+ 
+-    ::g_object_ref(gicon);                 //pass ownership
++    g_object_ref(gicon);                 //pass ownership
+     return FileIconHolder(gicon, maxSize); //
+ 
+ }
diff --git a/srcpkgs/FreeFileSync/patches/use_gtk3.patch b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
new file mode 100644
index 00000000000000..9d622ab7133d66
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
@@ -0,0 +1,32 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/Makefile
+@@ -17,9 +17,8 @@ LDFLAGS += `pkg-config --libs   libcurl`
+ CXXFLAGS  += `pkg-config --cflags libssh2`
+ LDFLAGS += `pkg-config --libs   libssh2`
+ 
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ #support for SELinux (optional)
+ SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES)
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+@@ -8,9 +8,8 @@ CXXFLAGS += -std=c++23 -pipe -DWXINTL_NO
+ LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
+ 
+ #Gtk - support "no button border"
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ cppFiles=
+ cppFiles+=application.cpp
diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
new file mode 100644
index 00000000000000..e4b5695f2ddb50
--- /dev/null
+++ b/srcpkgs/FreeFileSync/template
@@ -0,0 +1,48 @@
+# Template file for 'FreeFileSync'
+pkgname=FreeFileSync
+version=13.5
+revision=1
+archs="i686 x86_64"
+create_wrksrc=yes
+build_style=gnu-makefile
+hostmakedepends="unzip wget"
+makedepends="pkg-config libglib-devel wxWidgets-gtk3-devel libcurl-devel openssl-devel libssh2-devel"
+depends="wxWidgets-gtk3 libcurl libssh2 openssl"
+short_desc="Backup software to synchronize files and folders"
+maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://freefilesync.org"
+distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
+checksum=f00b7c4286c0411da64271631523d3904bb198ff4cf2020d3f4a87dbc277ca76
+fetch_cmd="wget"
+
+CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"
+
+nopie_files="/opt/${pkgname}/Bin/FreeFileSync /opt/${pkgname}/Bin/RealTimeSync"
+
+post_patch() {
+	sed -i 's/wx-config/wx-config-gtk3/' FreeFileSync/Source/{,RealTimeSync/}Makefile
+}
+
+do_build() {
+	make ${makejobs} exeName=FreeFileSync -C FreeFileSync/Source
+	make ${makejobs} exeName=RealTimeSync -C FreeFileSync/Source/RealTimeSync
+	unzip FreeFileSync/Build/Resources/Icons.zip FreeFileSync.png RealTimeSync.png -d FreeFileSync/Build
+}
+
+do_install() {
+	vmkdir opt/${pkgname}
+	vcopy FreeFileSync/Build/Bin opt/${pkgname}
+	vcopy FreeFileSync/Build/Resources opt/${pkgname}
+
+	vmkdir usr/share/pixmaps
+	vinstall FreeFileSync/Build/FreeFileSync.png 0644 usr/share/pixmaps
+	vinstall FreeFileSync/Build/RealTimeSync.png 0644 usr/share/pixmaps
+
+	vmkdir usr/share/applications
+	vinstall ${FILESDIR}/FreeFileSync.desktop 0644 usr/share/applications
+	vinstall ${FILESDIR}/RealTimeSync.desktop 0644 usr/share/applications
+
+	vmkdir usr/bin
+	ln -s /opt/FreeFileSync/Bin/{FreeFileSync,RealTimeSync} ${DESTDIR}/usr/bin
+}

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] new package: FreeFileSync
  2024-04-20 11:39 [PR PATCH] new package: FreeFileSync Nicop06
                   ` (3 preceding siblings ...)
  2024-04-21 22:41 ` Nicop06
@ 2024-04-22  9:31 ` Nicop06
  2024-04-22 20:13 ` Nicop06
  5 siblings, 0 replies; 7+ messages in thread
From: Nicop06 @ 2024-04-22  9:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 656 bytes --]

There is an updated pull request by Nicop06 against master on the void-packages repository

https://github.com/Nicop06/void-packages FreeFileSync
https://github.com/void-linux/void-packages/pull/49934

new package: FreeFileSync
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64)


A patch file from https://github.com/void-linux/void-packages/pull/49934.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-FreeFileSync-49934.patch --]
[-- Type: text/x-diff, Size: 8499 bytes --]

From c0b231d02cd9bb803feb3daeb017ab10e9f6baad Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Wed, 17 Mar 2021 01:09:40 +0000
Subject: [PATCH] new package: FreeFileSync

---
 .../FreeFileSync/files/FreeFileSync.desktop   | 11 +++++
 .../FreeFileSync/files/RealTimeSync.desktop   | 11 +++++
 .../patches/allow_wxUSE_EXCEPTIONS.patch      | 30 ++++++++++++
 .../remove_namespace_prefix_for_gobject.patch | 13 +++++
 srcpkgs/FreeFileSync/patches/use_gtk3.patch   | 32 +++++++++++++
 srcpkgs/FreeFileSync/template                 | 48 +++++++++++++++++++
 6 files changed, 145 insertions(+)
 create mode 100644 srcpkgs/FreeFileSync/files/FreeFileSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/files/RealTimeSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/use_gtk3.patch
 create mode 100644 srcpkgs/FreeFileSync/template

diff --git a/srcpkgs/FreeFileSync/files/FreeFileSync.desktop b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
new file mode 100644
index 00000000000000..b94e4799d12316
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=FreeFileSync
+GenericName=Folder Comparison and Synchronization
+GenericName[de_DE]=Ordnervergleich und Synchronisation
+Exec=FreeFileSync %F
+Icon=/usr/share/pixmaps/FreeFileSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/files/RealTimeSync.desktop b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
new file mode 100644
index 00000000000000..dfd533ffd88a71
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=RealTimeSync
+GenericName=Automated Synchronization
+GenericName[de_DE]=Automatisierte Synchronisation
+Exec=RealTimeSync %f
+Icon=/usr/share/pixmaps/RealTimeSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
new file mode 100644
index 00000000000000..51f011d89faf00
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
@@ -0,0 +1,30 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+@@ -209,10 +209,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(FfsExitCode::success); //process exit code
+Index: FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+@@ -243,10 +243,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(exitCode_);
diff --git a/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
new file mode 100644
index 00000000000000..a8ebacfcf8a47a
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
@@ -0,0 +1,13 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/base/icon_loader.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+@@ -227,7 +227,7 @@ FileIconHolder fff::getFileIcon(const Zs
+     //the remaining icon types won't block!
+     assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+ 
+-    ::g_object_ref(gicon);                 //pass ownership
++    g_object_ref(gicon);                 //pass ownership
+     return FileIconHolder(gicon, maxSize); //
+ 
+ }
diff --git a/srcpkgs/FreeFileSync/patches/use_gtk3.patch b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
new file mode 100644
index 00000000000000..9d622ab7133d66
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
@@ -0,0 +1,32 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/Makefile
+@@ -17,9 +17,8 @@ LDFLAGS += `pkg-config --libs   libcurl`
+ CXXFLAGS  += `pkg-config --cflags libssh2`
+ LDFLAGS += `pkg-config --libs   libssh2`
+ 
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ #support for SELinux (optional)
+ SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES)
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+@@ -8,9 +8,8 @@ CXXFLAGS += -std=c++23 -pipe -DWXINTL_NO
+ LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
+ 
+ #Gtk - support "no button border"
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ cppFiles=
+ cppFiles+=application.cpp
diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
new file mode 100644
index 00000000000000..e4b5695f2ddb50
--- /dev/null
+++ b/srcpkgs/FreeFileSync/template
@@ -0,0 +1,48 @@
+# Template file for 'FreeFileSync'
+pkgname=FreeFileSync
+version=13.5
+revision=1
+archs="i686 x86_64"
+create_wrksrc=yes
+build_style=gnu-makefile
+hostmakedepends="unzip wget"
+makedepends="pkg-config libglib-devel wxWidgets-gtk3-devel libcurl-devel openssl-devel libssh2-devel"
+depends="wxWidgets-gtk3 libcurl libssh2 openssl"
+short_desc="Backup software to synchronize files and folders"
+maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://freefilesync.org"
+distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
+checksum=f00b7c4286c0411da64271631523d3904bb198ff4cf2020d3f4a87dbc277ca76
+fetch_cmd="wget"
+
+CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"
+
+nopie_files="/opt/${pkgname}/Bin/FreeFileSync /opt/${pkgname}/Bin/RealTimeSync"
+
+post_patch() {
+	sed -i 's/wx-config/wx-config-gtk3/' FreeFileSync/Source/{,RealTimeSync/}Makefile
+}
+
+do_build() {
+	make ${makejobs} exeName=FreeFileSync -C FreeFileSync/Source
+	make ${makejobs} exeName=RealTimeSync -C FreeFileSync/Source/RealTimeSync
+	unzip FreeFileSync/Build/Resources/Icons.zip FreeFileSync.png RealTimeSync.png -d FreeFileSync/Build
+}
+
+do_install() {
+	vmkdir opt/${pkgname}
+	vcopy FreeFileSync/Build/Bin opt/${pkgname}
+	vcopy FreeFileSync/Build/Resources opt/${pkgname}
+
+	vmkdir usr/share/pixmaps
+	vinstall FreeFileSync/Build/FreeFileSync.png 0644 usr/share/pixmaps
+	vinstall FreeFileSync/Build/RealTimeSync.png 0644 usr/share/pixmaps
+
+	vmkdir usr/share/applications
+	vinstall ${FILESDIR}/FreeFileSync.desktop 0644 usr/share/applications
+	vinstall ${FILESDIR}/RealTimeSync.desktop 0644 usr/share/applications
+
+	vmkdir usr/bin
+	ln -s /opt/FreeFileSync/Bin/{FreeFileSync,RealTimeSync} ${DESTDIR}/usr/bin
+}

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PR PATCH] [Updated] new package: FreeFileSync
  2024-04-20 11:39 [PR PATCH] new package: FreeFileSync Nicop06
                   ` (4 preceding siblings ...)
  2024-04-22  9:31 ` Nicop06
@ 2024-04-22 20:13 ` Nicop06
  5 siblings, 0 replies; 7+ messages in thread
From: Nicop06 @ 2024-04-22 20:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 656 bytes --]

There is an updated pull request by Nicop06 against master on the void-packages repository

https://github.com/Nicop06/void-packages FreeFileSync
https://github.com/void-linux/void-packages/pull/49934

new package: FreeFileSync
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64)


A patch file from https://github.com/void-linux/void-packages/pull/49934.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-FreeFileSync-49934.patch --]
[-- Type: text/x-diff, Size: 8733 bytes --]

From 9bdfb1297a1d01122c99e01095e9153ddd61f7e7 Mon Sep 17 00:00:00 2001
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Date: Wed, 17 Mar 2021 01:09:40 +0000
Subject: [PATCH] new package: FreeFileSync

---
 .../FreeFileSync/files/FreeFileSync.desktop   | 11 ++++
 .../FreeFileSync/files/RealTimeSync.desktop   | 11 ++++
 .../patches/allow_wxUSE_EXCEPTIONS.patch      | 30 ++++++++++
 .../remove_namespace_prefix_for_gobject.patch | 13 +++++
 srcpkgs/FreeFileSync/patches/use_gtk3.patch   | 32 +++++++++++
 srcpkgs/FreeFileSync/template                 | 55 +++++++++++++++++++
 6 files changed, 152 insertions(+)
 create mode 100644 srcpkgs/FreeFileSync/files/FreeFileSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/files/RealTimeSync.desktop
 create mode 100644 srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
 create mode 100644 srcpkgs/FreeFileSync/patches/use_gtk3.patch
 create mode 100644 srcpkgs/FreeFileSync/template

diff --git a/srcpkgs/FreeFileSync/files/FreeFileSync.desktop b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
new file mode 100644
index 00000000000000..b94e4799d12316
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/FreeFileSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=FreeFileSync
+GenericName=Folder Comparison and Synchronization
+GenericName[de_DE]=Ordnervergleich und Synchronisation
+Exec=FreeFileSync %F
+Icon=/usr/share/pixmaps/FreeFileSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/files/RealTimeSync.desktop b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
new file mode 100644
index 00000000000000..dfd533ffd88a71
--- /dev/null
+++ b/srcpkgs/FreeFileSync/files/RealTimeSync.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=RealTimeSync
+GenericName=Automated Synchronization
+GenericName[de_DE]=Automatisierte Synchronisation
+Exec=RealTimeSync %f
+Icon=/usr/share/pixmaps/RealTimeSync.png
+NoDisplay=false
+Terminal=false
+Categories=Utility;FileTools;
+StartupNotify=true
diff --git a/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
new file mode 100644
index 00000000000000..51f011d89faf00
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/allow_wxUSE_EXCEPTIONS.patch
@@ -0,0 +1,30 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/application.cpp
+@@ -209,10 +209,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(FfsExitCode::success); //process exit code
+Index: FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/application.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/application.cpp
+@@ -243,10 +243,6 @@ wxLayoutDirection Application::GetLayout
+ 
+ int Application::OnRun()
+ {
+-#if wxUSE_EXCEPTIONS
+-#error why is wxWidgets uncaught exception handling enabled!?
+-#endif
+-
+     //exception => Windows: let it crash and create mini dump!!! Linux/macOS: std::exception::what() logged to console
+         [[maybe_unused]] const int rc = wxApp::OnRun();
+     return static_cast<int>(exitCode_);
diff --git a/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
new file mode 100644
index 00000000000000..a8ebacfcf8a47a
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/remove_namespace_prefix_for_gobject.patch
@@ -0,0 +1,13 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/base/icon_loader.cpp
++++ FreeFileSync-13.5/FreeFileSync/Source/base/icon_loader.cpp
+@@ -227,7 +227,7 @@ FileIconHolder fff::getFileIcon(const Zs
+     //the remaining icon types won't block!
+     assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
+ 
+-    ::g_object_ref(gicon);                 //pass ownership
++    g_object_ref(gicon);                 //pass ownership
+     return FileIconHolder(gicon, maxSize); //
+ 
+ }
diff --git a/srcpkgs/FreeFileSync/patches/use_gtk3.patch b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
new file mode 100644
index 00000000000000..9d622ab7133d66
--- /dev/null
+++ b/srcpkgs/FreeFileSync/patches/use_gtk3.patch
@@ -0,0 +1,32 @@
+Index: FreeFileSync-13.5/FreeFileSync/Source/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/Makefile
+@@ -17,9 +17,8 @@ LDFLAGS += `pkg-config --libs   libcurl`
+ CXXFLAGS  += `pkg-config --cflags libssh2`
+ LDFLAGS += `pkg-config --libs   libssh2`
+ 
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ #support for SELinux (optional)
+ SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES)
+Index: FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+===================================================================
+--- FreeFileSync-13.5.orig/FreeFileSync/Source/RealTimeSync/Makefile
++++ FreeFileSync-13.5/FreeFileSync/Source/RealTimeSync/Makefile
+@@ -8,9 +8,8 @@ CXXFLAGS += -std=c++23 -pipe -DWXINTL_NO
+ LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread
+ 
+ #Gtk - support "no button border"
+-CXXFLAGS  += `pkg-config --cflags gtk+-2.0`
+-#treat as system headers so that warnings are hidden:
+-CXXFLAGS  += -isystem/usr/include/gtk-2.0
++CXXFLAGS  += `pkg-config --cflags gtk+-3.0`
++LDFLAGS  += `pkg-config --libs gtk+-3.0`
+ 
+ cppFiles=
+ cppFiles+=application.cpp
diff --git a/srcpkgs/FreeFileSync/template b/srcpkgs/FreeFileSync/template
new file mode 100644
index 00000000000000..a5f4d30f4a72bb
--- /dev/null
+++ b/srcpkgs/FreeFileSync/template
@@ -0,0 +1,55 @@
+# Template file for 'FreeFileSync'
+pkgname=FreeFileSync
+version=13.5
+revision=1
+archs="i686 x86_64"
+create_wrksrc=yes
+build_style=gnu-makefile
+hostmakedepends="unzip wget"
+makedepends="pkg-config libglib-devel wxWidgets-gtk3-devel libcurl-devel openssl-devel libssh2-devel"
+depends="wxWidgets-gtk3 libcurl libssh2 openssl"
+short_desc="Backup software to synchronize files and folders"
+maintainer="Nicolas Porcel <nicolasporcel06@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://freefilesync.org"
+distfiles="${homepage}/download/${pkgname}_${version}_Source.zip"
+checksum=f00b7c4286c0411da64271631523d3904bb198ff4cf2020d3f4a87dbc277ca76
+fetch_cmd="wget"
+
+CXXFLAGS="-DMAX_SFTP_READ_SIZE=30000 -DMAX_SFTP_OUTGOING_SIZE=30000"
+
+nopie_files="/opt/${pkgname}/Bin/FreeFileSync /opt/${pkgname}/Bin/RealTimeSync"
+
+pre_fetch() {
+	# Download the file once to ensure that the file is cached. This is
+	# required as the first time the package is downloaded, an html page is
+	# returned instead of the download itself.
+	wget $distfiles -O /dev/null
+}
+
+post_patch() {
+	sed -i 's/wx-config/wx-config-gtk3/' FreeFileSync/Source/{,RealTimeSync/}Makefile
+}
+
+do_build() {
+	make ${makejobs} exeName=FreeFileSync -C FreeFileSync/Source
+	make ${makejobs} exeName=RealTimeSync -C FreeFileSync/Source/RealTimeSync
+	unzip FreeFileSync/Build/Resources/Icons.zip FreeFileSync.png RealTimeSync.png -d FreeFileSync/Build
+}
+
+do_install() {
+	vmkdir opt/${pkgname}
+	vcopy FreeFileSync/Build/Bin opt/${pkgname}
+	vcopy FreeFileSync/Build/Resources opt/${pkgname}
+
+	vmkdir usr/share/pixmaps
+	vinstall FreeFileSync/Build/FreeFileSync.png 0644 usr/share/pixmaps
+	vinstall FreeFileSync/Build/RealTimeSync.png 0644 usr/share/pixmaps
+
+	vmkdir usr/share/applications
+	vinstall ${FILESDIR}/FreeFileSync.desktop 0644 usr/share/applications
+	vinstall ${FILESDIR}/RealTimeSync.desktop 0644 usr/share/applications
+
+	vmkdir usr/bin
+	ln -s /opt/FreeFileSync/Bin/{FreeFileSync,RealTimeSync} ${DESTDIR}/usr/bin
+}

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-04-22 20:13 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-20 11:39 [PR PATCH] new package: FreeFileSync Nicop06
2024-04-21 21:45 ` [PR PATCH] [Updated] " Nicop06
2024-04-21 21:55 ` Nicop06
2024-04-21 22:41 ` Nicop06
2024-04-21 22:41 ` Nicop06
2024-04-22  9:31 ` Nicop06
2024-04-22 20:13 ` Nicop06

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).