Hex Artifact Content

Artifact 1e459fa032f7b6b4af3d7d953413527ff808163d:


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 73 65 74 20 2d 65 0a 0a 23 20  bash..set -e..# 
0020: 4e 6f 74 20 69 6e 63 6c 75 64 65 64 3a 0a 23 20  Not included:.# 
0030: 20 31 2e 20 44 6f 77 6e 6c 6f 61 64 69 6e 67 20   1. Downloading 
0040: 68 75 67 65 2e 73 20 66 72 6f 6d 20 53 6c 61 63  huge.s from Slac
0050: 6b 77 61 72 65 36 34 20 6b 65 72 6e 65 6c 73 20  kware64 kernels 
0060: 28 69 6e 74 6f 20 62 6f 6f 74 2f 29 0a 23 20 20  (into boot/).#  
0070: 32 2e 20 44 6f 77 6e 6c 6f 61 64 69 6e 67 20 6b  2. Downloading k
0080: 65 72 6e 65 6c 20 6d 6f 64 75 6c 65 73 20 70 61  ernel modules pa
0090: 63 6b 61 67 65 20 66 72 6f 6d 20 53 6c 61 63 6b  ckage from Slack
00a0: 77 61 72 65 36 34 20 28 69 6e 74 6f 20 72 6f 6f  ware64 (into roo
00b0: 74 2f 29 0a 23 20 20 33 2e 20 44 6f 77 6e 6c 6f  t/).#  3. Downlo
00c0: 61 64 69 6e 67 20 61 20 73 74 61 74 69 63 20 54  ading a static T
00d0: 63 6c 6b 69 74 20 77 69 74 68 20 54 55 41 50 49  clkit with TUAPI
00e0: 0a 23 20 20 34 2e 20 44 6f 77 6e 6c 6f 61 64 69  .#  4. Downloadi
00f0: 6e 67 20 61 20 73 74 61 74 69 63 20 41 70 70 46  ng a static AppF
0100: 53 0a 0a 6d 61 6b 65 20 69 6e 69 74 20 4c 44 46  S..make init LDF
0110: 4c 41 47 53 3d 2d 73 74 61 74 69 63 0a 63 70 20  LAGS=-static.cp 
0120: 69 6e 69 74 20 72 6f 6f 74 2f 62 69 6e 0a 0a 72  init root/bin..r
0130: 6d 20 2d 66 20 61 70 70 66 73 2e 69 6d 67 0a 74  m -f appfs.img.t
0140: 72 75 6e 63 61 74 65 20 2d 2d 73 69 7a 65 20 31  runcate --size 1
0150: 30 32 34 4d 20 61 70 70 66 73 2e 69 6d 67 0a 73  024M appfs.img.s
0160: 66 64 69 73 6b 20 2d 2d 6e 6f 2d 74 65 6c 6c 2d  fdisk --no-tell-
0170: 6b 65 72 6e 65 6c 20 2d 2d 6e 6f 2d 72 65 72 65  kernel --no-rere
0180: 61 64 20 2e 2f 61 70 70 66 73 2e 69 6d 67 20 3c  ad ./appfs.img <
0190: 3c 3c 27 6c 61 62 65 6c 3a 20 64 6f 73 0a 73 69  <<'label: dos.si
01a0: 7a 65 3d 31 36 4d 20 74 79 70 65 3d 38 33 20 62  ze=16M type=83 b
01b0: 6f 6f 74 61 62 6c 65 0a 73 69 7a 65 3d 32 33 39  ootable.size=239
01c0: 4d 20 74 79 70 65 3d 38 33 0a 74 79 70 65 3d 38  M type=83.type=8
01d0: 33 27 0a 0a 73 75 64 6f 20 75 6d 6f 75 6e 74 20  3'..sudo umount 
01e0: 78 2d 62 6f 6f 74 20 7c 7c 20 3a 0a 73 75 64 6f  x-boot || :.sudo
01f0: 20 6c 6f 73 65 74 75 70 20 2d 64 20 2f 64 65 76   losetup -d /dev
0200: 2f 6c 6f 6f 70 33 20 7c 7c 20 3a 0a 73 75 64 6f  /loop3 || :.sudo
0210: 20 6c 6f 73 65 74 75 70 20 2d 2d 70 61 72 74 73   losetup --parts
0220: 63 61 6e 20 2f 64 65 76 2f 6c 6f 6f 70 33 20 24  can /dev/loop3 $
0230: 28 70 77 64 29 2f 61 70 70 66 73 2e 69 6d 67 0a  (pwd)/appfs.img.
0240: 73 75 64 6f 20 63 68 6f 77 6e 20 22 24 28 69 64  sudo chown "$(id
0250: 20 2d 75 29 3a 24 28 69 64 20 2d 67 29 22 20 2f   -u):$(id -g)" /
0260: 64 65 76 2f 6c 6f 6f 70 33 20 2f 64 65 76 2f 6c  dev/loop3 /dev/l
0270: 6f 6f 70 33 70 31 20 2f 64 65 76 2f 6c 6f 6f 70  oop3p1 /dev/loop
0280: 33 70 32 0a 0a 73 75 64 6f 20 6d 6b 65 32 66 73  3p2..sudo mke2fs
0290: 20 5c 0a 20 20 2d 4c 20 27 42 4f 4f 54 27 20 5c   \.  -L 'BOOT' \
02a0: 0a 20 20 2d 4e 20 30 20 5c 0a 20 20 2d 4f 20 5e  .  -N 0 \.  -O ^
02b0: 36 34 62 69 74 20 5c 0a 20 20 2d 64 20 62 6f 6f  64bit \.  -d boo
02c0: 74 20 5c 0a 20 20 2d 6d 20 35 20 5c 0a 20 20 2d  t \.  -m 5 \.  -
02d0: 72 20 31 20 5c 0a 20 20 2d 74 20 65 78 74 34 20  r 1 \.  -t ext4 
02e0: 5c 0a 20 20 2f 64 65 76 2f 6c 6f 6f 70 33 70 31  \.  /dev/loop3p1
02f0: 0a 0a 73 75 64 6f 20 6d 6b 65 32 66 73 20 5c 0a  ..sudo mke2fs \.
0300: 20 20 2d 4c 20 27 52 4f 4f 54 27 20 5c 0a 20 20    -L 'ROOT' \.  
0310: 2d 4e 20 30 20 5c 0a 20 20 2d 4f 20 5e 36 34 62  -N 0 \.  -O ^64b
0320: 69 74 20 5c 0a 20 20 2d 64 20 72 6f 6f 74 20 5c  it \.  -d root \
0330: 0a 20 20 2d 6d 20 35 20 5c 0a 20 20 2d 72 20 31  .  -m 5 \.  -r 1
0340: 20 5c 0a 20 20 2d 74 20 65 78 74 34 20 5c 0a 20   \.  -t ext4 \. 
0350: 20 2f 64 65 76 2f 6c 6f 6f 70 33 70 32 0a 0a 73   /dev/loop3p2..s
0360: 75 64 6f 20 6d 6b 65 32 66 73 20 5c 0a 20 20 2d  udo mke2fs \.  -
0370: 4c 20 27 44 41 54 41 27 20 5c 0a 20 20 2d 4e 20  L 'DATA' \.  -N 
0380: 30 20 5c 0a 20 20 2d 4f 20 5e 36 34 62 69 74 20  0 \.  -O ^64bit 
0390: 5c 0a 20 20 2d 6d 20 35 20 5c 0a 20 20 2d 72 20  \.  -m 5 \.  -r 
03a0: 31 20 5c 0a 20 20 2d 74 20 65 78 74 34 20 5c 0a  1 \.  -t ext4 \.
03b0: 20 20 2f 64 65 76 2f 6c 6f 6f 70 33 70 33 0a 0a    /dev/loop3p3..
03c0: 6d 6b 64 69 72 20 78 2d 62 6f 6f 74 20 7c 7c 20  mkdir x-boot || 
03d0: 3a 0a 73 75 64 6f 20 6d 6f 75 6e 74 20 2f 64 65  :.sudo mount /de
03e0: 76 2f 6c 6f 6f 70 33 70 31 20 78 2d 62 6f 6f 74  v/loop3p1 x-boot
03f0: 0a 73 75 64 6f 20 65 78 74 6c 69 6e 75 78 20 2d  .sudo extlinux -
0400: 2d 69 6e 73 74 61 6c 6c 20 24 28 70 77 64 29 2f  -install $(pwd)/
0410: 78 2d 62 6f 6f 74 0a 73 75 64 6f 20 75 6d 6f 75  x-boot.sudo umou
0420: 6e 74 20 78 2d 62 6f 6f 74 0a 64 64 20 69 66 3d  nt x-boot.dd if=
0430: 2f 75 73 72 2f 6c 69 62 2f 45 58 54 4c 49 4e 55  /usr/lib/EXTLINU
0440: 58 2f 6d 62 72 2e 62 69 6e 20 6f 66 3d 61 70 70  X/mbr.bin of=app
0450: 66 73 2e 69 6d 67 20 63 6f 6e 76 3d 6e 6f 74 72  fs.img conv=notr
0460: 75 6e 63 0a 72 6d 64 69 72 20 78 2d 62 6f 6f 74  unc.rmdir x-boot
0470: 0a 0a 6c 6f 73 65 74 75 70 20 2d 64 20 2f 64 65  ..losetup -d /de
0480: 76 2f 6c 6f 6f 70 33 0a                          v/loop3.