Remove setuid root and use setcap instead in RPM packages.
[dcpomatic.git] / cscript
diff --git a/cscript b/cscript
index 0f205c08684402176a0ebf476b3fbd6d9f9fb9bf..49a07fdb6ee39aef40cd5b9acdeafeea3802706b 100644 (file)
--- a/cscript
+++ b/cscript
@@ -408,6 +408,7 @@ def make_spec(filename, version, target, options, requires=None):
     print('', file=f)
     print('%post', file=f)
     print('/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :', file=f)
+    print('setcap "cap_dac_override+ep cap_sys_admin+ep" /usr/bin/dcpomatic2_disk_writer', file=f)
     print('', file=f)
     print('%postun', file=f)
     print('if [ $1 -eq 0 ] ; then', file=f)
@@ -431,8 +432,8 @@ def dependencies(target, options):
         # Use distro-provided FFmpeg on Arch
         deps = []
 
-    deps.append(('libdcp', 'v1.8.0'))
-    deps.append(('libsub', '587e475'))
+    deps.append(('libdcp', 'v1.8.5'))
+    deps.append(('libsub', 'v1.6.5'))
     deps.append(('leqm-nrt', '93ae9e6'))
     deps.append(('rtaudio', 'f619b76'))
     # We get our OpenSSL libraries from the environment, but we
@@ -694,12 +695,10 @@ def package_rpm(target, cpu, version, options):
 
     return rpms
 
-def make_appimage(target, nice_name, internal_name, version, extra_bin=None):
+def make_appimage(target, nice_name, internal_name, version):
     nice_filename = nice_name.replace(' ', '_')
     os.makedirs('build/%s.AppDir/usr/bin' % nice_filename)
     target.command('cp %s/bin/%s build/%s.AppDir/usr/bin' % (target.directory, internal_name, nice_filename))
-    if extra_bin:
-        target.command('cp %s/bin/%s build/%s.AppDir/usr/bin' % (target.directory, extra_bin, nice_filename))
     target.command('cp %s/src/openssl/apps/openssl build/%s.AppDir/usr/bin/dcpomatic2_openssl' % (target.directory, nice_filename))
     target.command('cp %s/bin/dcpverify build/%s.AppDir/usr/bin/dcpomatic2_verify' % (target.directory, nice_filename))
     target.command('mkdir -p build/%s.AppDir/usr/share/libdcp' % nice_filename)
@@ -745,7 +744,6 @@ def package(target, version, options):
             out.append(make_appimage(target, 'DCP-o-matic KDM Creator', 'dcpomatic2_kdm', version))
             out.append(make_appimage(target, 'DCP-o-matic Batch Converter', 'dcpomatic2_batch', version))
             out.append(make_appimage(target, 'DCP-o-matic Encode Server', 'dcpomatic2_server', version))
-            out.append(make_appimage(target, 'DCP-o-matic Disk Writer', 'dcpomatic2_disk', version, "dcpomatic2_disk_writer"))
             out.append(make_appimage(target, 'DCP-o-matic Combiner', 'dcpomatic2_combiner', version))
             return out
         else:
@@ -807,8 +805,8 @@ def make_pot(target):
             os.path.abspath('build/src/tools/dcpomatic.pot')]
 
 def make_manual(target):
+    target.command('make -C doc/manual LIBDCP=../../../libdcp')
     os.chdir('doc/manual')
-    target.command('make')
     target.command('pdflatex colour.tex')
     return [os.path.abspath('pdf'), os.path.abspath('html'), os.path.abspath('colour.pdf')]