Hex Artifact Content

Artifact 9a6e6df8ac1d49a49ff2b7c83db047293fd217af:


0000: 23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20  #! /usr/bin/env 
0010: 62 61 73 68 0a 0a 76 65 72 73 69 6f 6e 3d 22 24  bash..version="$
0020: 31 22 0a 76 65 72 73 69 6f 6e 5f 72 65 6c 65 61  1".version_relea
0030: 73 65 3d 27 31 27 0a 70 6c 61 74 66 6f 72 6d 3d  se='1'.platform=
0040: 22 24 28 75 6e 61 6d 65 20 2d 6d 29 22 0a 75 72  "$(uname -m)".ur
0050: 6c 3d 22 68 74 74 70 3a 2f 2f 72 6b 65 65 6e 65  l="http://rkeene
0060: 2e 6f 72 67 2f 64 65 76 65 6c 2f 61 70 70 66 73  .org/devel/appfs
0070: 2f 61 70 70 66 73 2d 24 7b 76 65 72 73 69 6f 6e  /appfs-${version
0080: 7d 2e 74 61 72 2e 67 7a 22 0a 6d 61 6b 65 5f 61  }.tar.gz".make_a
0090: 72 67 73 3d 28 0a 09 70 72 65 66 69 78 3d 2f 75  rgs=(..prefix=/u
00a0: 73 72 0a 09 73 62 69 6e 64 69 72 3d 2f 73 62 69  sr..sbindir=/sbi
00b0: 6e 0a 09 6d 61 6e 64 69 72 3d 2f 75 73 72 2f 6d  n..mandir=/usr/m
00c0: 61 6e 0a 29 0a 0a 69 66 20 5b 20 2d 7a 20 22 24  an.)..if [ -z "$
00d0: 7b 76 65 72 73 69 6f 6e 7d 22 20 5d 3b 20 74 68  {version}" ]; th
00e0: 65 6e 0a 09 65 63 68 6f 20 27 55 73 61 67 65 3a  en..echo 'Usage:
00f0: 20 6d 61 6b 65 2d 73 6c 61 63 6b 77 61 72 65 2d   make-slackware-
0100: 70 61 63 6b 61 67 65 20 3c 76 65 72 73 69 6f 6e  package <version
0110: 3e 27 20 3e 26 32 0a 0a 09 65 78 69 74 20 31 0a  >' >&2...exit 1.
0120: 66 69 0a 0a 77 6f 72 6b 64 69 72 3d 22 24 7b 54  fi..workdir="${T
0130: 4d 50 44 49 52 3a 2d 2f 74 6d 70 7d 2f 61 70 70  MPDIR:-/tmp}/app
0140: 66 73 2d 73 6c 61 63 6b 77 61 72 65 2d 70 61 63  fs-slackware-pac
0150: 6b 61 67 65 2d 24 7b 76 65 72 73 69 6f 6e 7d 2d  kage-${version}-
0160: 24 24 24 7b 52 41 4e 44 4f 4d 7d 24 7b 52 41 4e  $$${RANDOM}${RAN
0170: 44 4f 4d 7d 24 7b 52 41 4e 44 4f 4d 7d 22 0a 70  DOM}${RANDOM}".p
0180: 61 63 6b 61 67 65 3d 22 61 70 70 66 73 2d 24 7b  ackage="appfs-${
0190: 76 65 72 73 69 6f 6e 7d 2d 24 7b 70 6c 61 74 66  version}-${platf
01a0: 6f 72 6d 7d 2d 24 7b 76 65 72 73 69 6f 6e 5f 72  orm}-${version_r
01b0: 65 6c 65 61 73 65 7d 2e 74 78 7a 22 0a 6d 6b 64  elease}.txz".mkd
01c0: 69 72 20 22 24 7b 77 6f 72 6b 64 69 72 7d 22 20  ir "${workdir}" 
01d0: 7c 7c 20 65 78 69 74 20 31 0a 0a 28 0a 09 50 41  || exit 1..(..PA
01e0: 54 48 3d 22 24 7b 50 41 54 48 7d 3a 2f 73 62 69  TH="${PATH}:/sbi
01f0: 6e 22 0a 0a 09 73 65 74 20 2d 65 78 0a 0a 09 63  n"...set -ex...c
0200: 64 20 22 24 7b 77 6f 72 6b 64 69 72 7d 22 0a 0a  d "${workdir}"..
0210: 09 69 6e 73 74 61 6c 6c 64 69 72 3d 22 24 28 70  .installdir="$(p
0220: 77 64 29 2f 69 6e 73 74 61 6c 6c 65 64 22 0a 0a  wd)/installed"..
0230: 09 77 67 65 74 20 2d 4f 20 61 70 70 66 73 2e 74  .wget -O appfs.t
0240: 61 72 2e 67 7a 20 22 24 7b 75 72 6c 7d 22 0a 09  ar.gz "${url}"..
0250: 74 61 72 20 2d 78 66 20 61 70 70 66 73 2e 74 61  tar -xf appfs.ta
0260: 72 2e 67 7a 0a 0a 09 63 64 20 22 61 70 70 66 73  r.gz...cd "appfs
0270: 2d 24 7b 76 65 72 73 69 6f 6e 7d 22 0a 0a 09 6d  -${version}"...m
0280: 61 6b 65 20 22 24 7b 6d 61 6b 65 5f 61 72 67 73  ake "${make_args
0290: 5b 40 5d 7d 22 0a 09 6d 61 6b 65 20 22 24 7b 6d  [@]}"..make "${m
02a0: 61 6b 65 5f 61 72 67 73 5b 40 5d 7d 22 20 44 45  ake_args[@]}" DE
02b0: 53 54 44 49 52 3d 22 24 7b 69 6e 73 74 61 6c 6c  STDIR="${install
02c0: 64 69 72 7d 22 20 69 6e 73 74 61 6c 6c 0a 0a 09  dir}" install...
02d0: 63 64 20 22 24 7b 69 6e 73 74 61 6c 6c 64 69 72  cd "${installdir
02e0: 7d 22 0a 0a 09 6d 6b 64 69 72 20 69 6e 73 74 61  }"...mkdir insta
02f0: 6c 6c 0a 09 63 61 74 20 3c 3c 20 5c 5f 45 4f 46  ll..cat << \_EOF
0300: 5f 20 3e 20 69 6e 73 74 61 6c 6c 2f 73 6c 61 63  _ > install/slac
0310: 6b 2d 64 65 73 63 0a 61 70 70 66 73 3a 20 61 70  k-desc.appfs: ap
0320: 70 66 73 20 28 41 70 70 20 46 69 6c 65 73 79 73  pfs (App Filesys
0330: 74 65 6d 29 0a 61 70 70 66 73 3a 0a 61 70 70 66  tem).appfs:.appf
0340: 73 3a 20 41 70 70 46 53 20 69 73 20 61 20 6d 61  s: AppFS is a ma
0350: 6e 69 66 65 73 74 2d 62 61 73 65 64 20 46 55 53  nifest-based FUS
0360: 45 20 66 69 6c 65 73 79 73 74 65 6d 20 74 68 61  E filesystem tha
0370: 74 20 6c 61 7a 69 6c 79 20 66 65 74 63 68 65 73  t lazily fetches
0380: 20 66 69 6c 65 73 20 6f 76 65 72 20 48 54 54 50   files over HTTP
0390: 2e 0a 61 70 70 66 73 3a 20 49 74 20 69 73 20 69  ..appfs: It is i
03a0: 6e 74 65 6e 64 65 64 20 74 6f 20 62 65 20 61 20  ntended to be a 
03b0: 75 6e 69 76 65 72 73 61 6c 20 70 61 63 6b 61 67  universal packag
03c0: 69 6e 67 20 66 6f 72 6d 61 74 2e 0a 61 70 70 66  ing format..appf
03d0: 73 3a 0a 61 70 70 66 73 3a 0a 61 70 70 66 73 3a  s:.appfs:.appfs:
03e0: 0a 61 70 70 66 73 3a 0a 61 70 70 66 73 3a 0a 61  .appfs:.appfs:.a
03f0: 70 70 66 73 3a 0a 61 70 70 66 73 3a 0a 5f 45 4f  ppfs:.appfs:._EO
0400: 46 5f 0a 0a 09 6d 61 6b 65 70 6b 67 20 2d 63 20  F_...makepkg -c 
0410: 6e 20 2d 6c 20 79 20 22 2e 2e 2f 24 7b 70 61 63  n -l y "../${pac
0420: 6b 61 67 65 7d 22 0a 0a 09 78 7a 20 2d 64 63 20  kage}"...xz -dc 
0430: 22 2e 2e 2f 24 7b 70 61 63 6b 61 67 65 7d 22 20  "../${package}" 
0440: 7c 20 74 61 72 64 79 20 2d 55 73 65 72 20 30 20  | tardy -User 0 
0450: 2d 47 72 6f 75 70 20 30 20 7c 20 78 7a 20 2d 39  -Group 0 | xz -9
0460: 63 20 3e 20 22 2e 2e 2f 24 7b 70 61 63 6b 61 67  c > "../${packag
0470: 65 7d 2e 6e 65 77 22 0a 09 6d 76 20 22 2e 2e 2f  e}.new"..mv "../
0480: 24 7b 70 61 63 6b 61 67 65 7d 2e 6e 65 77 22 20  ${package}.new" 
0490: 22 2e 2e 2f 24 7b 70 61 63 6b 61 67 65 7d 22 0a  "../${package}".
04a0: 29 20 7c 7c 20 65 78 69 74 20 31 0a 0a 6d 76 20  ) || exit 1..mv 
04b0: 22 24 7b 77 6f 72 6b 64 69 72 7d 2f 24 7b 70 61  "${workdir}/${pa
04c0: 63 6b 61 67 65 7d 22 20 2e 0a 0a 72 6d 20 2d 72  ckage}" ...rm -r
04d0: 66 20 22 24 7b 77 6f 72 6b 64 69 72 7d 22 0a 0a  f "${workdir}"..
04e0: 65 78 69 74 20 30 0a                             exit 0.