[arch-commits] Commit in arandr/trunk (PKGBUILD dont-compress-man-pages.patch)

Jelle van der Waa jelle at archlinux.org
Mon May 17 19:19:25 UTC 2021


    Date: Monday, May 17, 2021 @ 19:19:25
  Author: jelle
Revision: 936096

Make reproducible by not gzipping man pages

zipman in makepkg already gzips the man page in a reproducible manner while
python does not.

Added:
  arandr/trunk/dont-compress-man-pages.patch
Modified:
  arandr/trunk/PKGBUILD

-------------------------------+
 PKGBUILD                      |   14 +++++++--
 dont-compress-man-pages.patch |   57 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 68 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-05-17 19:14:43 UTC (rev 936095)
+++ PKGBUILD	2021-05-17 19:19:25 UTC (rev 936096)
@@ -3,7 +3,7 @@
 
 pkgname=arandr
 pkgver=0.1.10
-pkgrel=5
+pkgrel=6
 pkgdesc="Provide a simple visual front end for XRandR 1.2."
 arch=('any')
 url="https://christian.amsuess.com/tools/arandr/"
@@ -10,9 +10,17 @@
 license=('GPL3')
 depends=('gtk3' 'python-cairo' 'python-gobject' 'xorg-xrandr')
 makedepends=('python-docutils')
-source=(https://christian.amsuess.com/tools/$pkgname/files/${pkgname}-$pkgver.tar.gz)
-sha256sums=('dbc8ac890da78e9c0ba3403a8932a925813bb8d62265276894e780ba2905b88c')
+source=(https://christian.amsuess.com/tools/$pkgname/files/${pkgname}-$pkgver.tar.gz
+        dont-compress-man-pages.patch)
+sha256sums=('dbc8ac890da78e9c0ba3403a8932a925813bb8d62265276894e780ba2905b88c'
+            'eb954b763bd2dd7f98ff04a4d45e59db9f8a16cc7384b47ffed733781057ab37')
 
+prepare() {
+  cd "$srcdir"/$pkgname-$pkgver
+  # Don't create gzip files with a build date in them which makes it unreproducible
+  patch -Np1 -i ${srcdir}/dont-compress-man-pages.patch
+}
+
 package() {
   cd "$srcdir"/$pkgname-$pkgver
   python setup.py install --prefix=/usr --root="$pkgdir"

Added: dont-compress-man-pages.patch
===================================================================
--- dont-compress-man-pages.patch	                        (rev 0)
+++ dont-compress-man-pages.patch	2021-05-17 19:19:25 UTC (rev 936096)
@@ -0,0 +1,57 @@
+diff -aur arandr-0.1.10/setup.py arandr-0.1.10.new/setup.py
+--- arandr-0.1.10/setup.py	2019-04-15 14:49:33.000000000 +0200
++++ arandr-0.1.10.new/setup.py	2021-05-17 21:10:30.598046190 +0200
+@@ -20,7 +20,6 @@
+ import operator
+ import subprocess
+ import glob
+-import gzip
+ import datetime
+ 
+ import docutils.core
+@@ -100,20 +99,19 @@
+     def run(self):
+         self.mkpath('build')
+ 
+-        for (sourcefile, gzfile) in [
+-                ('data/arandr.1.txt', os.path.join('build', 'arandr.1.gz')),
+-                ('data/unxrandr.1.txt', os.path.join('build', 'unxrandr.1.gz')),
++        for (sourcefile, manfile) in [
++                ('data/arandr.1.txt', os.path.join('build', 'arandr.1')),
++                ('data/unxrandr.1.txt', os.path.join('build', 'unxrandr.1')),
+                 ]:
+ 
+-            if newer(sourcefile, gzfile):
++            if newer(sourcefile, manfile):
+                 rst_source = open(sourcefile).read()
+                 manpage = docutils.core.publish_string(rst_source, writer=docutils.writers.manpage.Writer())
+-                info('compressing man page to %s', gzfile)
+ 
+                 if not self.dry_run:
+-                    compressed = gzip.open(gzfile, 'w', 9)
+-                    compressed.write(manpage)
+-                    compressed.close()
++                    fp = open(manfile, 'wb')
++                    fp.write(manpage)
++                    fp.close()
+ 
+ class update_translator_credits(NoOptionCommand):
+     description = 'Examine the git history to produce an updated metadata file.'
+@@ -218,7 +216,7 @@
+     def run(self):
+         if self.all:
+             dirs = ['build/locale']
+-            files = ['build/arandr.1.gz', 'build/unxrandr.1.gz']
++            files = ['build/arandr.1', 'build/unxrandr.1']
+             for directory in dirs:
+                 if os.path.exists(directory):
+                     remove_tree(directory, dry_run=self.dry_run)
+@@ -259,7 +257,7 @@
+             },
+         data_files = [
+             ('share/applications', ['data/arandr.desktop']), # FIXME: use desktop-file-install?
+-            ('share/man/man1', ['build/arandr.1.gz', 'build/unxrandr.1.gz']),
++            ('share/man/man1', ['build/arandr.1', 'build/unxrandr.1']),
+             ],
+         scripts = ['arandr', 'unxrandr'],
+ )



More information about the arch-commits mailing list