Use setcap for privileges on Debian 10 and Ubuntu (#2001).
authorCarl Hetherington <cth@carlh.net>
Tue, 25 May 2021 22:52:08 +0000 (00:52 +0200)
committerCarl Hetherington <cth@carlh.net>
Wed, 26 May 2021 14:04:04 +0000 (16:04 +0200)
cscript
debian/rules

diff --git a/cscript b/cscript
index 896d8b3..4c24b51 100644 (file)
--- a/cscript
+++ b/cscript
@@ -582,6 +582,11 @@ def package_windows(target):
 
 def package_debian(target, cpu, version, options):
     make_control(target.version, target.bits, 'debian/control', target.debug, options['gui'])
+    if target.version != '9' and target.version != '16.04':
+        with open('debian/postinst', 'w') as f:
+            print('#!/bin/sh', file=f)
+            # Get the required capability to write to disks
+            print('setcap cap_dac_override+ep /usr/bin/dcpomatic2_disk_writer', file=f)
     target.command('./waf dist')
     f = open('debian/files', 'w')
     print('dcpomatic_%s-1_%s.deb video extra' % (version, cpu), file=f)
index a4aa5b8..aac2dac 100755 (executable)
@@ -48,9 +48,3 @@ override_dh_strip:
 override_dh_shlibdeps:
        dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
 
-DISK := debian/dcpomatic/usr/bin/dcpomatic2_disk_writer
-override_dh_fixperms:
-       dh_fixperms
-ifneq ("$(wildcard $(DISK))", "")
-       chmod 4755 $(DISK)
-endif