diff mbox series

[bug#49614] gnu: Add sequeler.

Message ID 3318b0c0-526d-b0a7-9c57-f81dc8df54bc@member.fsf.org
State Accepted
Headers show
Series [bug#49614] gnu: Add sequeler. | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Ale Abdo July 19, 2021, 12:47 p.m. UTC
* gnu/packages/databases.scm (sequeler): New variable.
---
  gnu/packages/databases.scm | 49 ++++++++++++++++++++++++++++++++++++++
  1 file changed, 49 insertions(+)

Comments

Efraim Flashner July 20, 2021, 9:02 a.m. UTC | #1
Not using a GTK based desktop I was able to make some changes to make
sure it ran smoothly.

On Mon, Jul 19, 2021 at 02:47:03PM +0200, Alexandre Hannud Abdo wrote:
> * gnu/packages/databases.scm (sequeler): New variable.
> ---
>  gnu/packages/databases.scm | 49 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 49 insertions(+)
> 
> diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
> index 28832041ed..19c720a94a 100644
> --- a/gnu/packages/databases.scm
> +++ b/gnu/packages/databases.scm
> @@ -52,6 +52,7 @@
>  ;;; Copyright © 2021 Pjotr Prins <pjotr.guix@thebird.nl>
>  ;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
>  ;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
> +;;; Copyright © 2021 Alexandre Hannud Abdo <abdo@member.fsf.org>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -78,6 +79,7 @@
>    #:use-module (gnu packages bash)
>    #:use-module (gnu packages bison)
>    #:use-module (gnu packages boost)
> +  #:use-module (gnu packages build-tools)
>    #:use-module (gnu packages check)
>    #:use-module (gnu packages cmake)
>    #:use-module (gnu packages compression)
> @@ -88,11 +90,14 @@
>    #:use-module (gnu packages dbm)
>    #:use-module (gnu packages emacs)
>    #:use-module (gnu packages flex)
> +  #:use-module (gnu packages freedesktop)
>    #:use-module (gnu packages gcc)
>    #:use-module (gnu packages gettext)
>    #:use-module (gnu packages glib)
> +  #:use-module (gnu packages gnome)
>    #:use-module (gnu packages gnupg)
>    #:use-module (gnu packages golang)
> +  #:use-module (gnu packages gtk)
>    #:use-module (gnu packages guile)
>    #:use-module (gnu packages icu4c)
>    #:use-module (gnu packages jemalloc)
> @@ -109,6 +114,7 @@
>    #:use-module (gnu packages multiprecision)
>    #:use-module (gnu packages ncurses)
>    #:use-module (gnu packages onc-rpc)
> +  #:use-module (gnu packages pantheon)
>    #:use-module (gnu packages parallel)
>    #:use-module (gnu packages pcre)
>    #:use-module (gnu packages perl)
> @@ -130,6 +136,7 @@
>    #:use-module (gnu packages ruby)
>    #:use-module (gnu packages serialization)
>    #:use-module (gnu packages sphinx)
> +  #:use-module (gnu packages ssh)
>    #:use-module (gnu packages sqlite)
>    #:use-module (gnu packages tcl)
>    #:use-module (gnu packages terminals)
> @@ -148,6 +155,7 @@
>    #:use-module (guix build-system emacs)
>    #:use-module (guix build-system gnu)
>    #:use-module (guix build-system go)
> +  #:use-module (guix build-system meson)
>    #:use-module (guix build-system perl)
>    #:use-module (guix build-system python)
>    #:use-module (guix build-system ruby)
> @@ -3983,3 +3991,44 @@ PostreSQL, SQLite, ODBC and MySQL.")
>       "FreeTDS is an implementation of the Tabular DataStream protocol, used for
>  connecting to MS SQL and Sybase servers over TCP/IP.")
>      (license license:lgpl2.0+)))
> +
> +(define-public sequeler
> +  (package
> +    (name "sequeler")
> +    (version "0.8.1")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/Alecaddd/sequeler")
> +                    (commit (string-append "v" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "1q1vzc3likpiwfh6blkyiz0wr0aarj9xrm8gbi7m3p1wslkpah7c"))))
> +    (build-system meson-build-system)

I added some boilerplate here to wrap the gtk variables and to not build
the icon-cache since it's built at profile-creation time.

> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)
> +       ("meson" ,meson)
> +       ("vala" ,vala)
> +       ("desktop-file-utils" ,desktop-file-utils)
> +       ;; ("appstream-glib" ,appstream-glib) ; validation fails for lack of network
> +       ("glib:bin" ,glib "bin") ; for glib-compile-resources
> +       ("gtk+" ,gtk+ "bin")))

meson isn't needed because it's included by default with the
meson-build-system. I took out the desktop-file-utils since we weren't
updating the desktop database.

> +    (inputs
> +     `(("gtk+" ,gtk+)
> +       ("granite" ,granite)
> +       ("libgee" ,libgee)
> +       ("glib" ,glib)
> +       ("libxml2" ,libxml2)
> +       ("libgda" ,libgda)
> +       ("gtksourceview-3" ,gtksourceview-3)
> +       ("libsecret" ,libsecret)
> +       ("libssh2" ,libssh2)
> +       ("gettext-minimal" ,gettext-minimal)))

gettext-minimal I moved to native-inputs. I also added
gsettings-desktop-schemas to inputs since it complained (at me) when I
tried to run sequeler without including it.

> +    (synopsis "Friendly SQL Client")
> +    (description "Sequeler is a native Linux SQL client built in Vala and
> +Gtk.  It allows you to connect to your local and remote databases, write SQL in
> +a handy text editor with language recognition, and visualize SELECT results in
> +a Gtk.Grid Widget.")
> +    (home-page "https://github.com/Alecaddd/sequeler")
> +    (license license:lgpl3+)))

Looking at the source code headers it looks like it's gpl2+, so I
changed the license.

> -- 
> 2.32.0
> 

Thanks for the patch! Pushed.
diff mbox series

Patch

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 28832041ed..19c720a94a 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -52,6 +52,7 @@ 
  ;;; Copyright © 2021 Pjotr Prins <pjotr.guix@thebird.nl>
  ;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
  ;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
+;;; Copyright © 2021 Alexandre Hannud Abdo <abdo@member.fsf.org>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
@@ -78,6 +79,7 @@ 
    #:use-module (gnu packages bash)
    #:use-module (gnu packages bison)
    #:use-module (gnu packages boost)
+  #:use-module (gnu packages build-tools)
    #:use-module (gnu packages check)
    #:use-module (gnu packages cmake)
    #:use-module (gnu packages compression)
@@ -88,11 +90,14 @@ 
    #:use-module (gnu packages dbm)
    #:use-module (gnu packages emacs)
    #:use-module (gnu packages flex)
+  #:use-module (gnu packages freedesktop)
    #:use-module (gnu packages gcc)
    #:use-module (gnu packages gettext)
    #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
    #:use-module (gnu packages gnupg)
    #:use-module (gnu packages golang)
+  #:use-module (gnu packages gtk)
    #:use-module (gnu packages guile)
    #:use-module (gnu packages icu4c)
    #:use-module (gnu packages jemalloc)
@@ -109,6 +114,7 @@ 
    #:use-module (gnu packages multiprecision)
    #:use-module (gnu packages ncurses)
    #:use-module (gnu packages onc-rpc)
+  #:use-module (gnu packages pantheon)
    #:use-module (gnu packages parallel)
    #:use-module (gnu packages pcre)
    #:use-module (gnu packages perl)
@@ -130,6 +136,7 @@ 
    #:use-module (gnu packages ruby)
    #:use-module (gnu packages serialization)
    #:use-module (gnu packages sphinx)
+  #:use-module (gnu packages ssh)
    #:use-module (gnu packages sqlite)
    #:use-module (gnu packages tcl)
    #:use-module (gnu packages terminals)
@@ -148,6 +155,7 @@ 
    #:use-module (guix build-system emacs)
    #:use-module (guix build-system gnu)
    #:use-module (guix build-system go)
+  #:use-module (guix build-system meson)
    #:use-module (guix build-system perl)
    #:use-module (guix build-system python)
    #:use-module (guix build-system ruby)
@@ -3983,3 +3991,44 @@  PostreSQL, SQLite, ODBC and MySQL.")
       "FreeTDS is an implementation of the Tabular DataStream protocol, used for
  connecting to MS SQL and Sybase servers over TCP/IP.")
      (license license:lgpl2.0+)))
+
+(define-public sequeler
+  (package
+    (name "sequeler")
+    (version "0.8.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Alecaddd/sequeler")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1q1vzc3likpiwfh6blkyiz0wr0aarj9xrm8gbi7m3p1wslkpah7c"))))
+    (build-system meson-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("meson" ,meson)
+       ("vala" ,vala)
+       ("desktop-file-utils" ,desktop-file-utils)
+       ;; ("appstream-glib" ,appstream-glib) ; validation fails for lack of network
+       ("glib:bin" ,glib "bin") ; for glib-compile-resources
+       ("gtk+" ,gtk+ "bin")))
+    (inputs
+     `(("gtk+" ,gtk+)
+       ("granite" ,granite)
+       ("libgee" ,libgee)
+       ("glib" ,glib)
+       ("libxml2" ,libxml2)
+       ("libgda" ,libgda)
+       ("gtksourceview-3" ,gtksourceview-3)
+       ("libsecret" ,libsecret)
+       ("libssh2" ,libssh2)
+       ("gettext-minimal" ,gettext-minimal)))
+    (synopsis "Friendly SQL Client")
+    (description "Sequeler is a native Linux SQL client built in Vala and
+Gtk.  It allows you to connect to your local and remote databases, write SQL in
+a handy text editor with language recognition, and visualize SELECT results in
+a Gtk.Grid Widget.")
+    (home-page "https://github.com/Alecaddd/sequeler")
+    (license license:lgpl3+)))