Advertisement
goatbar

2nd draft of update alternatives generator for fink py pkgs

Aug 26th, 2011
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.01 KB | None | 0 0
  1. #!/usr/bin/env python
  2. from __future__ import print_function
  3.  
  4. # BSD license... use and abuse.  -Kurt Schwehr 2011-Aug-26
  5.  
  6. import sys
  7.  
  8.  
  9. # ./make_alternatives.py gdal  epsg_tr.py esri2wkt.py gcps2vec.py gcps2wld.py gdal2tiles.py gdal2xyz.py gdal_fillnodata.py gdal_merge.py gdal_polygonize.py gdal_proximity.py gdal_retile.py gdal_sieve.py gdalchksum.py gdalident.py gdalimport.py mkgraticule.py pct2rgb.py rgb2pct.py
  10.  
  11.  
  12. basename = sys.argv[1] # first module
  13. programs = sys.argv[2:]
  14.  
  15. if basename[-3:] != '-py':
  16.     print ('appending -py!!!!')
  17.     basename += '-py'
  18.  
  19.  
  20. # WARNING:  make sure that type_pkg or type_raw matches the install tweaks for all the bins
  21.  
  22.  
  23. # update-alternatives [options] --install link name path priority [--slave link name path]...
  24.  
  25. # vpdate-alternatives --verbose --install %p/bin/virtualenv virtualenv-py %p/bin/virtualenv-py%type_pkg[python] %type_pkg[python]
  26. print ('PostInstScript: <<')
  27.  
  28. first_line =  '  update-alternatives --verbose --install %p/bin/{programs[0]} {basename} %p/bin/{programs[0]}%type_pkg[python] %type_pkg[python] \\'.format(**locals())
  29.  
  30. print (' echo "'+first_line+'  "')
  31. print (first_line)
  32.  
  33. slaves = programs[1:]
  34. print ('# slaves:', slaves)
  35.  
  36. if len(slaves) >= 2:
  37.     for program in slaves[:-1]:
  38.         print('\t--slave %p/bin/{program} {program} %p/bin/{program}%type_pkg[python] \\'.format(program=program))
  39. if len(slaves) >= 1:
  40.     print('\t--slave %p/bin/{program} {program} %p/bin/{program}%type_pkg[python]'.format(program=programs[-1]))
  41. print('''
  42.  echo "You can inspect the links by running:"
  43.  echo "  update-alternatives --list {basename}"
  44.  echo "  update-alternatives --display {basename}"
  45. '''.format(basename=basename))
  46. print ('<<\n')
  47.  
  48. pre_rm_line = 'update-alternatives --verbose --remove {basename} %p/bin/{programs[0]}%type_pkg[python]'.format(**locals())
  49. print ('''PreRmScript: <<
  50.  if [ $1 != "upgrade" ]; then
  51.     echo "{pre_rm_line}"
  52.     {pre_rm_line}
  53.  else
  54.    echo "Do not remove during upgrade"
  55.  fi
  56. <<'''.format(**locals()))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement