Package Details: infnoise 0.3.2-2

Git Clone URL: https://aur.archlinux.org/infnoise.git (read-only, click to copy)
Package Base: infnoise
Description: Infinite Noise TRNG driver
Upstream URL: https://github.com/leetronics/infnoise
Keywords: hrng hwrng infnoise random rng trng
Licenses: custom:CC0 1.0 Universal
Submitter: AidanGG
Maintainer: AidanGG
Last Packager: AidanGG
Votes: 2
Popularity: 0.000000
First Submitted: 2018-11-03 02:40 (UTC)
Last Updated: 2021-12-09 18:15 (UTC)

Required by (0)

Sources (1)

Latest Comments

bbx0 commented on 2021-12-09 20:50 (UTC)

Thanks for noticing and fixing the typo! Sorry, I didn't notice myself.

Looking into a kernel driver sounds cool!

AidanGG commented on 2021-11-24 21:14 (UTC)

@bbx0 thanks for your changes, I have committed them. In the mean time, I'm investigating writing a kernel driver so we don't have to rely on libftdi at all: https://github.com/leetronics/infnoise/issues/20

bbx0 commented on 2021-11-24 20:57 (UTC) (edited on 2021-11-24 20:58 (UTC) by bbx0)

Just made proposal to build the 0.3.2 release, please find it below.

  • Changed the upstream URL to https://github.com/leetronics/infnoise as they provide the actual releases.
  • Use git+https to download the sources. The Makefile.Linux uses git to set the version parameters internally, this way they are consistent.
  • Unfortunately upstream does not offer any signature for 0.3.2. As a fallback I set the github workflow signature.
  • The udev rule configures the dialout group but in Arch it should be uucp for tty devices. (The group dialout does not exists.)

Not sure why the libftdi-compat dependency is used. For me it seems to build and work okay also with libftdi.

# Maintainer: Aidan Dang <dang at aidan dot gg>
# Contributor: Manuel Domke <manuel-domke at gmx dot org>

# shellcheck shell=bash disable=SC2034,SC2154,SC2164

pkgbase=infnoise
pkgname=(infnoise libinfnoise infnoise-tools)
pkgver=0.3.2
_commit=e80ddd7
pkgrel=1
pkgdesc="Infinite Noise TRNG"
arch=('x86_64')
url="https://github.com/leetronics/infnoise"
license=('custom:CC0 1.0 Universal')
depends=('libftdi')
makedepends=('git' 'sed')
source=("$pkgbase-$pkgver::git+$url#commit=$_commit?signed")
sha512sums=('SKIP')
# GitHub (web-flow commit signing) <noreply@github.com> [this is NOT the authors key!]
# gpg --keyserver hkps://pgp.surf.nl --recv-keys 5DE3E0509C47EA3CF04A42D34AEE18F83AFDEB23
validpgpkeys=('5DE3E0509C47EA3CF04A42D34AEE18F83AFDEB23')

build() {
  cd $pkgbase-$pkgver/software
  make -f Makefile.linux

  # Build infnoise-tools
  cd tools
  make all
}

package_libinfnoise() {
  pkgdesc="Infinite Noise TRNG library"

  cd $pkgbase-$pkgver
  install -Dm644 "LICENSE"                                     "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  install -Dm644 "software/libinfnoise.h"                      "${pkgdir}/usr/include/libinfnoise.h"
  install -Dm755 "software/libinfnoise.so"                     "${pkgdir}/usr/lib/libinfnoise.so"
}

package_infnoise() {
  pkgdesc="Infinite Noise TRNG driver"
  backup=("etc/infnoise.conf")

  cd $pkgbase-$pkgver
  install -Dm644 "LICENSE"                                     "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  install -Dm644 "software/init_scripts/75-infnoise.rules"     "${pkgdir}/usr/lib/udev/rules.d/75-infnoise.rules"
  install -Dm644 "software/init_scripts/infnoise.conf.systemd" "${pkgdir}/etc/infnoise.conf"
  install -Dm644 "software/init_scripts/infnoise.service.bin"  "${pkgdir}/usr/lib/systemd/system/infnoise.service"
  install -Dm755 "software/infnoise"                           "${pkgdir}/usr/bin/infnoise"

  # in Arch the `uucp` group owns /dev/tty* devices, not `dialout`
  sed --in-place 's/dialout/uccp/g' "${pkgdir}/usr/lib/udev/rules.d/75-infnoise.rules"
}

package_infnoise-tools() {
  pkgdesc="Infinite Noise TRNG tools"
  depends=('glibc')

  cd $pkgbase-$pkgver
  install -Dm644 "LICENSE"                                     "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  install -Dm755 "software/tools/bin2hex"                      "${pkgdir}/usr/bin/infnoise-bin2hex"
  install -Dm755 "software/tools/dice"                         "${pkgdir}/usr/bin/infnoise-dice"
  install -Dm755 "software/tools/entcheck"                     "${pkgdir}/usr/bin/infnoise-entcheck"
  install -Dm755 "software/tools/findlongest"                  "${pkgdir}/usr/bin/infnoise-findlongest"
  install -Dm755 "software/tools/flipbits"                     "${pkgdir}/usr/bin/infnoise-flipbits"
  install -Dm755 "software/tools/healthcheck"                  "${pkgdir}/usr/bin/infnoise-healthcheck"
  install -Dm755 "software/tools/hex2bin"                      "${pkgdir}/usr/bin/infnoise-hex2bin"
  install -Dm755 "software/tools/passgen"                      "${pkgdir}/usr/bin/infnoise-passgen"
}

esh commented on 2019-02-13 18:28 (UTC)

Cool, that is definitely the most correct way to do it. Thanks for going the extra mile! :)

AidanGG commented on 2019-01-27 14:50 (UTC)

I have split this package to provide the driver, library and tools separately.

AidanGG commented on 2019-01-25 12:36 (UTC) (edited on 2019-01-25 12:37 (UTC) by AidanGG)

@kvasthval Thanks for the patch + suggestion. I will make an update soon.

esh commented on 2019-01-25 12:34 (UTC)

Thanks for maintaining! It would be nice to have the tools available as well. In Debian the package is split up into infnoise and infnoise-tools, but the tools are quite simple and small (~120 KiB) and could IMO easily be integrated into this package, e.g.: https://pastebin.com/UHjKpR6D