arandr: make reproducible by setting mtime=0

+25 -3
+15
pkgs/by-name/ar/arandr/gzip-timestamp-fix.patch
···
··· 1 + --- setup.py 2025-04-01 11:24:54.530984662 +0000 2 + +++ setup.py 2025-04-01 13:54:46.961341548 +0000 3 + 4 + @@ -111,9 +111,11 @@ 5 + info('compressing man page to %s', gzfile) 6 + 7 + if not self.dry_run: 8 + - compressed = gzip.open(gzfile, 'w', 9) 9 + - compressed.write(manpage) 10 + - compressed.close() 11 + + with open(gzfile, 'wb') as file: 12 + + with gzip.GzipFile(fileobj=file, mode='wb', filename='', mtime=0, compresslevel=9) as compressed: 13 + + compressed.write(manpage) 14 + + compressed.close() 15 + + file.close()
+10 -3
pkgs/by-name/ar/arandr/package.nix
··· 1 { 2 lib, 3 fetchurl, 4 python3Packages, 5 gobject-introspection, 6 gsettings-desktop-schemas, ··· 16 pname = "arandr"; 17 version = "0.1.11"; 18 19 - src = fetchurl { 20 - url = "https://christian.amsuess.com/tools/arandr/files/${pname}-${version}.tar.gz"; 21 - hash = "sha256-5Mu+Npi7gSs5V3CHAXS+AJS7rrOREFqBH5X0LrGCrgI="; 22 }; 23 24 preBuild = '' 25 rm -rf data/po/*
··· 1 { 2 lib, 3 fetchurl, 4 + fetchFromGitLab, 5 python3Packages, 6 gobject-introspection, 7 gsettings-desktop-schemas, ··· 17 pname = "arandr"; 18 version = "0.1.11"; 19 20 + src = fetchFromGitLab { 21 + owner = "arandr"; 22 + repo = "arandr"; 23 + tag = version; 24 + hash = "sha256-nQtfOKAnWKsy2DmvtRGJa4+Y9uGgX41BeHpd9m4d9YA="; 25 }; 26 + 27 + # patch to set mtime=0 on setup.py 28 + patches = [ ./gzip-timestamp-fix.patch ]; 29 + patchFlags = [ "-p0" ]; 30 31 preBuild = '' 32 rm -rf data/po/*