diff mbox series

[bug#62308] gnu: Add converseen.

Message ID 20230320221723.332511-1-mail@nicolasgoaziou.fr
State New
Headers show
Series [bug#62308] gnu: Add converseen. | expand

Commit Message

Nicolas Goaziou March 20, 2023, 10:17 p.m. UTC
* gnu/packages/image.scm (converseen): New variable.
* gnu/packages/patches/converseen-hide-updates-checks.patch: New file.
* gnu/local.mk (converseen): Register file above.
---
 gnu/local.mk                                  |   1 +
 gnu/packages/image.scm                        |  42 ++++++
 .../converseen-hide-updates-checks.patch      | 128 ++++++++++++++++++
 3 files changed, 171 insertions(+)
 create mode 100644 gnu/packages/patches/converseen-hide-updates-checks.patch


base-commit: 3893758dac76fc30b23d4715e849e262306f268d

Comments

Maxim Cournoyer March 21, 2023, 7:09 p.m. UTC | #1
Hi Nicolas,

Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

> * gnu/packages/image.scm (converseen): New variable.
> * gnu/packages/patches/converseen-hide-updates-checks.patch: New file.
> * gnu/local.mk (converseen): Register file above.
> ---
>  gnu/local.mk                                  |   1 +
>  gnu/packages/image.scm                        |  42 ++++++
>  .../converseen-hide-updates-checks.patch      | 128 ++++++++++++++++++
>  3 files changed, 171 insertions(+)
>  create mode 100644 gnu/packages/patches/converseen-hide-updates-checks.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 4a662efc3c..91eeb389d1 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -1009,6 +1009,7 @@ dist_patch_DATA =						\
>    %D%/packages/patches/connman-CVE-2022-32293-pt1.patch	\
>    %D%/packages/patches/connman-CVE-2022-32293-pt2.patch	\
>    %D%/packages/patches/containerd-create-pid-file.patch	\
> +  %D%/packages/patches/converseen-hide-updates-checks.patch	\
>    %D%/packages/patches/cool-retro-term-wctype.patch		\
>    %D%/packages/patches/coreutils-gnulib-tests.patch		\
>    %D%/packages/patches/coq-fix-envvars.patch			\
> diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
> index 228a31c7d0..d21401bbbd 100644
> --- a/gnu/packages/image.scm
> +++ b/gnu/packages/image.scm
> @@ -35,6 +35,7 @@
>  ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
>  ;;; Copyright © 2022 ( <paren@disroot.org>
>  ;;; Copyright © 2022-2023 Bruno Victal <mirai@makinata.eu>
> +;;; Copyright © 2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -76,6 +77,7 @@ (define-module (gnu packages image)
>    #:use-module (gnu packages gnome)
>    #:use-module (gnu packages graphics)
>    #:use-module (gnu packages gtk)
> +  #:use-module (gnu packages imagemagick)
>    #:use-module (gnu packages lua)
>    #:use-module (gnu packages man)
>    #:use-module (gnu packages maths)
> @@ -115,6 +117,46 @@ (define-module (gnu packages image)
>    #:use-module (guix deprecation)
>    #:use-module (srfi srfi-1))
>  
> +(define-public converseen
> +  (package
> +    (name "converseen")
> +    (version "0.9.11.1")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/Faster3ck/Converseen")
> +                    (commit (string-append "v" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "0nxvac8df47gxg1klqlz0s3rxl0ykrikmciniwkb938bgilmaijm"))
> +              (patches
> +               (search-patches "converseen-hide-updates-checks.patch"))))

There's also a Help -> Donate to Paypal button.  With Paypal using
non-free JavaScript, it seems this would go against the FSDG guideline
of not inciting users to run non-free software.  Could it be hidden too?

> +    (build-system cmake-build-system)
> +    (arguments
> +     (list
> +      #:tests? #false                   ;no tests
> +      #:phases
> +      #~(modify-phases %standard-phases
> +          (add-after 'unpack 'set-translations-location
> +            ;; Fix translations location.
> +            (lambda _
> +              (substitute* "src/translator.cpp"
> +                (("QString\\(\"%1/share/converseen/loc\"\\).arg\\(rootPath\\)")
> +                 (string-append "QString(\""
> +                                #$output
> +                                "/share/converseen/loc\")"))))))))
> +    (native-inputs
> +     (list pkg-config qttools-5))
> +    (inputs
> +     (list imagemagick qtbase-5))
> +    (home-page "https://converseen.fasterland.net/")
> +    (synopsis "Batch image converter and resizer")
> +    (description
> +     "Converseen is an image batch conversion tool.  You can resize and
> +convert images in more than 100 different formats.")
> +    (license license:gpl3+)))
> +
>  (define-public iqa
>    (package
>      (name "iqa")
> diff --git a/gnu/packages/patches/converseen-hide-updates-checks.patch b/gnu/packages/patches/converseen-hide-updates-checks.patch
> new file mode 100644
> index 0000000000..d08a79c2f5
> --- /dev/null
> +++ b/gnu/packages/patches/converseen-hide-updates-checks.patch
> @@ -0,0 +1,128 @@
> +From 13dbaab0d3383b451f3efa225c3767c2eb376756 Mon Sep 17 00:00:00 2001
> +From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
> +Date: Mon, 20 Mar 2023 22:38:25 +0100
> +Subject: [PATCH] Remove updates checks from UI.
> +
> +* ui/dialogoptions.ui:
> +* ui/mainwindow.ui:
> +* src/dialogoptions.cpp (DialogOptions::setAutoUpdates, DialogOptions::saveOptions):
> +(DialogOptions::loadSettings):
> +* src/mainwindowimpl.cpp (MainWindowImpl::createActions): Remove
> +references to updates checks.
> +---
> + src/dialogoptions.cpp  | 19 -------------------
> + src/mainwindowimpl.cpp |  1 -
> + ui/dialogoptions.ui    | 16 ----------------
> + ui/mainwindow.ui       |  9 ---------
> + 4 files changed, 45 deletions(-)

Nitpick: I know some people prefer simple diffs as patch, without the
Git metadata.  The only place I preserve the metadata myself is when
using an upstream patch, in which case the commit and other metadata are
useful for traceability.

So my recommendation would be using a simple diff, and adding the
following at the top:

Summary line explaining what it does
Upstream status: Guix-specific, not forwarded upstream.

Would you mind sending a v2 with the above, when you get the chance?
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 4a662efc3c..91eeb389d1 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1009,6 +1009,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/connman-CVE-2022-32293-pt1.patch	\
   %D%/packages/patches/connman-CVE-2022-32293-pt2.patch	\
   %D%/packages/patches/containerd-create-pid-file.patch	\
+  %D%/packages/patches/converseen-hide-updates-checks.patch	\
   %D%/packages/patches/cool-retro-term-wctype.patch		\
   %D%/packages/patches/coreutils-gnulib-tests.patch		\
   %D%/packages/patches/coq-fix-envvars.patch			\
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 228a31c7d0..d21401bbbd 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -35,6 +35,7 @@ 
 ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
 ;;; Copyright © 2022 ( <paren@disroot.org>
 ;;; Copyright © 2022-2023 Bruno Victal <mirai@makinata.eu>
+;;; Copyright © 2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -76,6 +77,7 @@  (define-module (gnu packages image)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages graphics)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages man)
   #:use-module (gnu packages maths)
@@ -115,6 +117,46 @@  (define-module (gnu packages image)
   #:use-module (guix deprecation)
   #:use-module (srfi srfi-1))
 
+(define-public converseen
+  (package
+    (name "converseen")
+    (version "0.9.11.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Faster3ck/Converseen")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0nxvac8df47gxg1klqlz0s3rxl0ykrikmciniwkb938bgilmaijm"))
+              (patches
+               (search-patches "converseen-hide-updates-checks.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:tests? #false                   ;no tests
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'set-translations-location
+            ;; Fix translations location.
+            (lambda _
+              (substitute* "src/translator.cpp"
+                (("QString\\(\"%1/share/converseen/loc\"\\).arg\\(rootPath\\)")
+                 (string-append "QString(\""
+                                #$output
+                                "/share/converseen/loc\")"))))))))
+    (native-inputs
+     (list pkg-config qttools-5))
+    (inputs
+     (list imagemagick qtbase-5))
+    (home-page "https://converseen.fasterland.net/")
+    (synopsis "Batch image converter and resizer")
+    (description
+     "Converseen is an image batch conversion tool.  You can resize and
+convert images in more than 100 different formats.")
+    (license license:gpl3+)))
+
 (define-public iqa
   (package
     (name "iqa")
diff --git a/gnu/packages/patches/converseen-hide-updates-checks.patch b/gnu/packages/patches/converseen-hide-updates-checks.patch
new file mode 100644
index 0000000000..d08a79c2f5
--- /dev/null
+++ b/gnu/packages/patches/converseen-hide-updates-checks.patch
@@ -0,0 +1,128 @@ 
+From 13dbaab0d3383b451f3efa225c3767c2eb376756 Mon Sep 17 00:00:00 2001
+From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
+Date: Mon, 20 Mar 2023 22:38:25 +0100
+Subject: [PATCH] Remove updates checks from UI.
+
+* ui/dialogoptions.ui:
+* ui/mainwindow.ui:
+* src/dialogoptions.cpp (DialogOptions::setAutoUpdates, DialogOptions::saveOptions):
+(DialogOptions::loadSettings):
+* src/mainwindowimpl.cpp (MainWindowImpl::createActions): Remove
+references to updates checks.
+---
+ src/dialogoptions.cpp  | 19 -------------------
+ src/mainwindowimpl.cpp |  1 -
+ ui/dialogoptions.ui    | 16 ----------------
+ ui/mainwindow.ui       |  9 ---------
+ 4 files changed, 45 deletions(-)
+
+diff --git a/src/dialogoptions.cpp b/src/dialogoptions.cpp
+index 704e75c..bb3f9b0 100755
+--- a/src/dialogoptions.cpp
++++ b/src/dialogoptions.cpp
+@@ -71,23 +71,10 @@ void DialogOptions::setOverwriteMode()
+         IniSettings::setOverwriteMode(true);
+ }
+ 
+-void DialogOptions::setAutoUpdates()
+-{
+-    bool enabled;
+-
+-    if (checkCheckUpdates->isChecked())
+-        enabled = true;
+-    else
+-        enabled = false;
+-
+-    IniSettings::setAutoChechUpdates(enabled);
+-}
+-
+ void DialogOptions::saveOptions()
+ {
+     setLanguage();
+     setOverwriteMode();
+-    setAutoUpdates();
+ 
+     IniSettings::settings->sync();
+     accept();
+@@ -102,12 +89,6 @@ void DialogOptions::loadSettings()
+     else
+         radioAskFirst->setChecked(true);
+ 
+-    bool autoUpdates = IniSettings::isAutoChechUpdates();
+-    if (autoUpdates)
+-        checkCheckUpdates->setCheckState(Qt::Checked);
+-    else
+-        checkCheckUpdates->setCheckState(Qt::Unchecked);
+-
+     Translator t;
+     
+     int idx = comboLangs->findText(t.currentLanguage(), Qt::MatchExactly);
+diff --git a/src/mainwindowimpl.cpp b/src/mainwindowimpl.cpp
+index 2b6d68d..83a365f 100755
+--- a/src/mainwindowimpl.cpp
++++ b/src/mainwindowimpl.cpp
+@@ -164,7 +164,6 @@ void MainWindowImpl::createActions()
+     connect(actionInfo, SIGNAL(triggered()), this, SLOT(about()));
+     connect(actionDonatePaypal, SIGNAL(triggered()), this, SLOT(openPaypalLink()));
+     connect(actionReportBug, SIGNAL(triggered()), this, SLOT(bugReport()));
+-    connect(actionCheckForUpdates, SIGNAL(triggered()), this, SLOT(checkForUpdates()));
+ }
+ 
+ void MainWindowImpl::setupMenu()
+diff --git a/ui/dialogoptions.ui b/ui/dialogoptions.ui
+index e59148d..6cb23f5 100755
+--- a/ui/dialogoptions.ui
++++ b/ui/dialogoptions.ui
+@@ -66,22 +66,6 @@
+      </layout>
+     </widget>
+    </item>
+-   <item>
+-    <widget class="QGroupBox" name="groupBox_3">
+-     <property name="title">
+-      <string>Updates</string>
+-     </property>
+-     <layout class="QVBoxLayout" name="verticalLayout_3">
+-      <item>
+-       <widget class="QCheckBox" name="checkCheckUpdates">
+-        <property name="text">
+-         <string>Checks for updates automatically</string>
+-        </property>
+-       </widget>
+-      </item>
+-     </layout>
+-    </widget>
+-   </item>
+    <item>
+     <layout class="QHBoxLayout" name="horizontalLayout_2">
+      <item>
+diff --git a/ui/mainwindow.ui b/ui/mainwindow.ui
+index a5f55f0..28df8cc 100755
+--- a/ui/mainwindow.ui
++++ b/ui/mainwindow.ui
+@@ -190,7 +190,6 @@
+     </property>
+     <addaction name="actionDonatePaypal"/>
+     <addaction name="separator"/>
+-    <addaction name="actionCheckForUpdates"/>
+     <addaction name="actionReportBug"/>
+     <addaction name="separator"/>
+    </widget>
+@@ -1365,14 +1364,6 @@ p, li { white-space: pre-wrap; }
+     <string>Import windows icon (*.ico *.icon)</string>
+    </property>
+   </action>
+-  <action name="actionCheckForUpdates">
+-   <property name="text">
+-    <string>&amp;Check for updates</string>
+-   </property>
+-   <property name="toolTip">
+-    <string>Check if a new version of Converseen is available</string>
+-   </property>
+-  </action>
+  </widget>
+  <customwidgets>
+   <customwidget>
+-- 
+2.39.2
+