[bug#54244] Add libxcrypt
Commit Message
I would like to add a libxcrypt package for guix. In several major linux
distributions it has become the default crypt library. I think it is that
case for Debian, Fedora, Gentoo, and perhaps others. In any case, it's
particularly useful for those who want access to numerous hashing
algorithms through crypt calls.
Comments
Hello,
Allan Adair <allan@adair.no> writes:
> I would like to add a libxcrypt package for guix. In several major linux
> distributions it has become the default crypt library. I think it is that
> case for Debian, Fedora, Gentoo, and perhaps others. In any case, it's
> particularly useful for those who want access to numerous hashing
> algorithms through crypt calls.
Thank you. I normalized your commit message, removed labels from
native-inputs, and applied your patch.
Regards,
From 2879564bdb9c87f89dcefa07b5e3bdfcd07d9914 Mon Sep 17 00:00:00 2001
From: Allan Adair <allan@adair.no>
Date: Fri, 4 Mar 2022 12:01:42 +0100
Subject: [PATCH] Add libxcrypt
libxcrypt is an extended crypt library for descrypt, md5crypt, bcrypt, and
others.
---
gnu/packages/crypto.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
@@ -22,6 +22,7 @@
;;; Copyright © 2021 Ellis Kenyő <me@elken.dev>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
+;;; Copyright © 2022 Allan Adair <allan@adair.no>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -73,6 +74,7 @@ (define-module (gnu packages crypto)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages python-check)
+ #:use-module (gnu packages python-crypto)
#:use-module (gnu packages readline)
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
@@ -1607,3 +1609,37 @@ (define-public b3sum
;; Users may choose between these two licenses when redistributing the
;; program provided by this package.
(license (list license:cc0 license:asl2.0))))
+
+(define-public libxcrypt
+ (package
+ (name "libxcrypt")
+ (version "4.4.28")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/besser82/libxcrypt")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0pacj0s1hlv22iz0k2bkysjslc6rbrgmvmsr02qq17lp4d2gw5rs"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("python3" ,python-3)
+ ("python-passlib" ,python-passlib)))
+ (synopsis
+ "Extended crypt library for descrypt, md5crypt, bcrypt, and others")
+ (description
+ "libxcrypt is a modern library for one-way hashing of
+passwords. It supports a wide variety of both modern and historical
+hashing methods: yescrypt, gost-yescrypt, scrypt, bcrypt, sha512crypt,
+sha256crypt, md5crypt, SunMD5, sha1crypt, NT, bsdicrypt, bigcrypt, and
+descrypt.")
+ (home-page "https://github.com/besser82/libxcrypt")
+ (license license:lgpl2.1)))
--
2.34.0