unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#43970] [PATCH 1/5] gnu: Add python-pyfavicon.
@ 2020-10-13  0:47 Vinicius Monego
  2020-10-13  0:53 ` [bug#43970] [PATCH 2/5] gnu: Add python-pyotp Vinicius Monego
  0 siblings, 1 reply; 6+ messages in thread
From: Vinicius Monego @ 2020-10-13  0:47 UTC (permalink / raw)
  To: 43970; +Cc: Vinicius Monego

* gnu/packages/python-xyz.scm (python-pyfavicon): New variable.
---
 gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0670eb7e08..aa87e94d82 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17178,6 +17178,31 @@ user's @file{~/Trash} directory.")
                        (string-append (getcwd) ":" (getenv "PYTHONPATH")))
                #t))))))))
 
+(define-public python-pyfavicon
+  (package
+    (name "python-pyfavicon")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pyfavicon" version))
+       (sha256
+        (base32 "15wfpa99hvcfsv8j0m8iprmydi2p4qkhm86qfx485244y0ia5mgx"))))
+    (build-system python-build-system)
+    (arguments
+     ;; There are no tests in the PyPI tarball and the tests from the
+     ;; repository require online data.
+     '(#:tests? #f))
+    (propagated-inputs
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-beautifulsoup4" ,python-beautifulsoup4)
+       ("python-pillow" ,python-pillow)))
+    (home-page "https://github.com/bilelmoussaoui/pyfavicon")
+    (synopsis "Async favicon fetcher")
+    (description
+     "@code{pyfavicon} is an async favicon fetcher.")
+    (license license:expat)))
+
 (define-public python-yapf
   (package
     (name "python-yapf")
-- 
2.20.1





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

* [bug#43970] [PATCH 2/5] gnu: Add python-pyotp.
  2020-10-13  0:47 [bug#43970] [PATCH 1/5] gnu: Add python-pyfavicon Vinicius Monego
@ 2020-10-13  0:53 ` Vinicius Monego
  2020-10-13  0:53   ` [bug#43970] [PATCH 3/5] gnu: Add yoyo-migrations Vinicius Monego
                     ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Vinicius Monego @ 2020-10-13  0:53 UTC (permalink / raw)
  To: 43970; +Cc: Vinicius Monego

* gnu/packages/python-crypto.scm (python-pyotp): New variable.
---
 gnu/packages/python-crypto.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index b01f5bb173..f0cde74128 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -1181,6 +1181,26 @@ been constructed to maintain extensive documentation on how to use
 @code{NaCl} as well as being completely portable.")
     (license license:asl2.0)))
 
+(define-public python-pyotp
+  (package
+    (name "python-pyotp")
+    (version "2.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pyotp" version))
+       (sha256
+        (base32 "0a1dx07y785xyl70h0vj6vssg13qfx11w04d0gz8h48qffsymv01"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/pyauth/pyotp")
+    (synopsis "Python One Time Password Library")
+    (description
+     "PyOTP is a Python library for generating and verifying one-time
+passwords.  It can be used to implement two-factor (2FA) or multi-factor
+(MFA) authentication methods in web applications and in other systems that
+require users to log in.")
+    (license license:expat)))
+
 (define-public python-scrypt
   (package
     (name "python-scrypt")
-- 
2.20.1





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

* [bug#43970] [PATCH 3/5] gnu: Add yoyo-migrations.
  2020-10-13  0:53 ` [bug#43970] [PATCH 2/5] gnu: Add python-pyotp Vinicius Monego
@ 2020-10-13  0:53   ` Vinicius Monego
  2020-10-13  0:53   ` [bug#43970] [PATCH 4/5] gnu: Add python-pyzbar Vinicius Monego
  2020-10-13  0:53   ` [bug#43970] [PATCH 5/5] gnu: Add authenticator Vinicius Monego
  2 siblings, 0 replies; 6+ messages in thread
From: Vinicius Monego @ 2020-10-13  0:53 UTC (permalink / raw)
  To: 43970; +Cc: Vinicius Monego

* gnu/packages/databases.scm (yoyo-migrations): New variable.
---
This package generates a binary, but inputs have to be propagated because authenticator uses its module interface.

 gnu/packages/databases.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 45224a5ed3..b37b8526d4 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -44,6 +44,7 @@
 ;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
 ;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
 ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -128,6 +129,7 @@
   #:use-module (guix download)
   #:use-module (guix bzr-download)
   #:use-module (guix git-download)
+  #:use-module (guix hg-download)
   #:use-module (guix build-system emacs)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system go)
@@ -2992,6 +2994,36 @@ database).")
 (define-public python2-sadisplay
   (package-with-python2 python-sadisplay))
 
+(define-public yoyo-migrations
+  (package
+    (name "yoyo-migrations")
+    (version "7.2.0")
+    (source
+     (origin
+       ;; We use the upstream repository, as the tests are not included in the
+       ;; PyPI releases.
+       (method hg-fetch)
+       (uri (hg-reference
+             (url "https://hg.sr.ht/~olly/yoyo")
+             (changeset (string-append "v" version "-release"))))
+       (file-name (string-append name "-" version "-checkout"))
+       (sha256
+        (base32 "0q2z9bgdj3wyix7yvqsayfs21grp5av8ilh411lgmjhigszkvhcq"))))
+    (build-system python-build-system)
+    (arguments
+     ;; XXX: Tests require a connection to some pgsql database and psycopg
+     ;; fails to connect to it.
+     '(#:tests? #f))
+    (propagated-inputs
+     `(("python-sqlparse" ,python-sqlparse)
+       ("python-tabulate" ,python-tabulate)))
+    (home-page "https://ollycope.com/software/yoyo/latest/")
+    (synopsis "Database migrations with SQL")
+    (description
+     "Yoyo is a database schema migration tool.  Migrations are written as SQL
+files or Python scripts that define a list of migration steps.")
+    (license license:asl2.0)))
+
 (define-public python-mysqlclient
   (package
     (name "python-mysqlclient")
-- 
2.20.1





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

* [bug#43970] [PATCH 4/5] gnu: Add python-pyzbar.
  2020-10-13  0:53 ` [bug#43970] [PATCH 2/5] gnu: Add python-pyotp Vinicius Monego
  2020-10-13  0:53   ` [bug#43970] [PATCH 3/5] gnu: Add yoyo-migrations Vinicius Monego
@ 2020-10-13  0:53   ` Vinicius Monego
  2020-10-13  0:53   ` [bug#43970] [PATCH 5/5] gnu: Add authenticator Vinicius Monego
  2 siblings, 0 replies; 6+ messages in thread
From: Vinicius Monego @ 2020-10-13  0:53 UTC (permalink / raw)
  To: 43970; +Cc: Vinicius Monego

* gnu/packages/python-xyz.scm (python-pyzbar): New variable.
---
 gnu/packages/python-xyz.scm | 53 +++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index aa87e94d82..44ce6eb7f3 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -106,6 +106,7 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages adns)
+  #:use-module (gnu packages aidc)
   #:use-module (gnu packages attr)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages bash)
@@ -17364,6 +17365,58 @@ Week instances stringify to this form.")
 (define-public python2-isoweek
   (package-with-python2 python-isoweek))
 
+(define-public python-pyzbar
+  (package
+    (name "python-pyzbar")
+    (version "0.1.8")
+    (source
+     (origin
+       ;; There's no source tarball on PyPI.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/NaturalHistoryMuseum/pyzbar")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1fqlfg5p2v9lzzzi0si2sz54lblprk6jjjhjw54b64lp58c1yhsl"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-failing-test
+           (lambda _
+             ;; This tests if find_library was called once, but we remove
+             ;; the call in the stage below to make the library find libzbar.
+             (delete-file "pyzbar/tests/test_zbar_library.py")
+             #t))
+         (add-before 'build 'set-library-file-name
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((libzbar (assoc-ref inputs "zbar")))
+               (substitute* "pyzbar/zbar_library.py"
+                 (("find_library\\('zbar'\\)")
+                  (string-append "'" libzbar "/lib/libzbar.so.0'")))
+               #t))))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("python-numpy" ,python-numpy)
+       ("python-pillow" ,python-pillow)))
+    (inputs
+     `(("zbar" ,zbar)))
+    (home-page "https://github.com/NaturalHistoryMuseum/pyzbar/")
+    (synopsis "Read one-dimensional barcodes and QR codes")
+    (description
+     "Read one-dimensional barcodes and QR codes using the zbar library.
+
+Features:
+
+@itemize
+@item Pure python
+@item Works with PIL / Pillow images, OpenCV / numpy ndarrays, and raw bytes
+@item Decodes locations of barcodes
+@item No dependencies, other than the zbar library itself
+@end itemize")
+    (license license:expat)))
+
 (define-public python-tokenize-rt
   (package
     (name "python-tokenize-rt")
-- 
2.20.1





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

* [bug#43970] [PATCH 5/5] gnu: Add authenticator.
  2020-10-13  0:53 ` [bug#43970] [PATCH 2/5] gnu: Add python-pyotp Vinicius Monego
  2020-10-13  0:53   ` [bug#43970] [PATCH 3/5] gnu: Add yoyo-migrations Vinicius Monego
  2020-10-13  0:53   ` [bug#43970] [PATCH 4/5] gnu: Add python-pyzbar Vinicius Monego
@ 2020-10-13  0:53   ` Vinicius Monego
  2020-10-18 21:44     ` bug#43970: " Marius Bakke
  2 siblings, 1 reply; 6+ messages in thread
From: Vinicius Monego @ 2020-10-13  0:53 UTC (permalink / raw)
  To: 43970; +Cc: Vinicius Monego

* gnu/packages/gnome.scm (authenticator): New variable.
---
 gnu/packages/gnome.scm | 70 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 70 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index e6cdb44a4d..d0e6b63352 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -74,6 +74,7 @@
 (define-module (gnu packages gnome)
   #:use-module (gnu packages)
   #:use-module (gnu packages admin)
+  #:use-module (gnu packages aidc)
   #:use-module (gnu packages aspell)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages avahi)
@@ -9129,6 +9130,75 @@ specified duration and save it as a GIF encoded animated image file.")
       (home-page "https://git.gnome.org/browse/byzanz")
       (license license:gpl2+))))
 
+(define-public authenticator
+  (package
+    (name "authenticator")
+    (version "3.32.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.gnome.org/World/Authenticator")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1c4r9rnrz5gazrfg0z2rcwax4nscs7z391bcjcl74k6ln3blwzpr"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((prog (string-append (assoc-ref outputs "out")
+                                        "/bin/authenticator"))
+                   (pylib (string-append (assoc-ref outputs "out")
+                                         "/lib/python"
+                                         ,(version-major+minor
+                                           (package-version python))
+                                         "/site-packages")))
+               (wrap-program prog
+                 `("PYTHONPATH" = (,(getenv "PYTHONPATH") ,pylib))
+                 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
+               #t))))))
+    (native-inputs
+     `(("desktop-file-utils" ,desktop-file-utils)
+       ("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("gtk+:bin" ,gtk+ "bin")
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+       ("gtk+" ,gtk+)
+       ("libhandy" ,libhandy-0.0)
+       ("libsecret" ,libsecret)
+       ("python-beautifulsoup4" ,python-beautifulsoup4)
+       ("python-pillow" ,python-pillow)
+       ("python-pyfavicon" ,python-pyfavicon)
+       ("python-pygobject" ,python-pygobject)
+       ("python-pyotp" ,python-pyotp)
+       ("python-pyzbar" ,python-pyzbar)
+       ("yoyo-migrations" ,yoyo-migrations)
+       ("zbar" ,zbar)))
+    (home-page "https://gitlab.gnome.org/World/Authenticator/")
+    (synopsis "Two-factor authentication application built for GNOME")
+    (description
+     "Authenticator is a two-factor authentication (2FA) application built for
+the GNOME desktop environment.
+
+Features:
+
+@itemize
+@item QR code scanner
+@item Beautiful UI
+@item Huge database of more than 560 supported services
+@item Keep your PIN tokens secure by locking the application with a password
+@item Automatically fetch an image for services using their favicon
+@item The possibility to add new services
+@end itemize")
+    (license license:gpl3+)))
+
 (define-public gsound
   (package
     (name "gsound")
-- 
2.20.1





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

* bug#43970: [PATCH 5/5] gnu: Add authenticator.
  2020-10-13  0:53   ` [bug#43970] [PATCH 5/5] gnu: Add authenticator Vinicius Monego
@ 2020-10-18 21:44     ` Marius Bakke
  0 siblings, 0 replies; 6+ messages in thread
From: Marius Bakke @ 2020-10-18 21:44 UTC (permalink / raw)
  To: Vinicius Monego, 43970-done; +Cc: Vinicius Monego

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

Vinicius Monego <monego@posteo.net> writes:

> * gnu/packages/gnome.scm (authenticator): New variable.

Very nice work.  Applied all five patches, thank you!

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 507 bytes --]

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

end of thread, other threads:[~2020-10-18 21:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-13  0:47 [bug#43970] [PATCH 1/5] gnu: Add python-pyfavicon Vinicius Monego
2020-10-13  0:53 ` [bug#43970] [PATCH 2/5] gnu: Add python-pyotp Vinicius Monego
2020-10-13  0:53   ` [bug#43970] [PATCH 3/5] gnu: Add yoyo-migrations Vinicius Monego
2020-10-13  0:53   ` [bug#43970] [PATCH 4/5] gnu: Add python-pyzbar Vinicius Monego
2020-10-13  0:53   ` [bug#43970] [PATCH 5/5] gnu: Add authenticator Vinicius Monego
2020-10-18 21:44     ` bug#43970: " Marius Bakke

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).