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 896d8b3f8045d35b6591048560a3958a884d0e40..4c24b511d28478ab4c6b83bd631ed0ead32f7c91 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'])
 
 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)
     target.command('./waf dist')
     f = open('debian/files', 'w')
     print('dcpomatic_%s-1_%s.deb video extra' % (version, cpu), file=f)
index a4aa5b8cd51abb060a0b7a5b2209277e5512d8d6..aac2dacaa9892fd2f197d3250c28165c8814e7cb 100755 (executable)
@@ -48,9 +48,3 @@ override_dh_strip:
 override_dh_shlibdeps:
        dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
 
 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