(command.CommandList children: [ (C {(set)} {(-e)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:PATH) op: Equal rhs: {($ VSub_DollarName '$PATH') (Lit_Other ':') (/usr/local/bin)} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:XBIN) op:Equal rhs:{(usr/xbin)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:SRC) op:Equal rhs:{(src)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:TMPKB) op:Equal rhs:{(32000)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:PACKAGEDIR) op: Equal rhs: {(/usr/bigports/Packages)} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:PACKAGESOURCEDIR) op: Equal rhs: {(/usr/bigports/Sources)} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:PACKAGELIST) op:Equal rhs:{(packages.install)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:PACKAGESOURCELIST) op: Equal rhs: {(package_sources.install)} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:secs) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {(32)} {(SQ <'*'>)} {(64)})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (C {(export)} {(Lit_VarLike 'SHELL=') (/bin/sh)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TRUNK) op: Equal rhs: {(https) (Lit_Other ':') (//gforge.cs.vu.nl/svn/minix/trunk)} ) ] ) (command.FuncDef name: make_hdimage body: (command.BraceGroup children: [ (C {(dd)} {(Lit_VarLike 'if=') ($ VSub_DollarName '$TMPDISK1')} {(Lit_VarLike 'of=') (usrimage)} {(Lit_VarLike 'bs=') ($ VSub_DollarName '$BS')} {(Lit_VarLike 'count=') ($ VSub_DollarName '$USRBLOCKS')} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:rootsize) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(stat)} {(-size)} {(rootimage)})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:usrsize) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(stat)} {(-size)} {(usrimage)})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:rootsects) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {($ VSub_DollarName '$rootsize')} {(/)} {(512)})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:usrsects) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {($ VSub_DollarName '$usrsize')} {(/)} {(512)})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.SimpleCommand words: [{(dd)} {(Lit_VarLike 'count=') (2)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(/dev/zero)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(tmpimage)}) ] ) (C {(partition)} {(-fm)} {(tmpimage)} {(2)} {(81) (Lit_Other ':') ($ VSub_DollarName '$rootsects') (Lit_Other '*')} {(0) (Lit_Other ':') (0)} {(81) (Lit_Other ':') ($ VSub_DollarName '$usrsects')} ) (C {(installboot)} {(-m)} {(tmpimage)} {(/usr/mdec/masterboot)}) (command.SimpleCommand words: [{(dd)} {(Lit_VarLike 'count=') (1)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(tmpimage)}) (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(subpart)}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:primsects) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(expr)} {(1)} {(Lit_Other '+')} {($ VSub_DollarName '$rootsects')} {(Lit_Other '+')} {($ VSub_DollarName '$usrsects')} ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cyl) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(expr)} {(SQ <'('>)} {($ VSub_DollarName '$primsects')} {(SQ <')'>)} {(/)} {($ VSub_DollarName '$secs')} {(Lit_Other '+')} {(1)} ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:padsects) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(expr)} {($ VSub_DollarName '$cyl')} {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\*'>)} {($ VSub_DollarName '$secs')} {(-)} {(1)} {(-)} {($ VSub_DollarName '$primsects')} ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.BraceGroup children: [ (command.SimpleCommand words: [{(dd)} {(Lit_VarLike 'count=') (1)}] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(/dev/zero)})] ) (C {(cat)} {(subpart)}) (C {(cat)} {(rootimage)}) (C {(cat)} {(usrimage)}) (command.SimpleCommand words: [{(dd)} {(Lit_VarLike 'count=') ($ VSub_DollarName '$padsects')}] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(/dev/zero)})] ) ] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(hdimage)})] ) (C {(partition)} {(-m)} {(hdimage)} {(81) (Lit_Other ':') (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(expr)} {($ VSub_DollarName '$primsects')} {(Lit_Other '+')} {($ VSub_DollarName '$padsects')} ) ] ) left_token: <Left_Backtick '`'> ) (Lit_Other '*') } ) (C {(installboot)} {(-m)} {(hdimage)} {(/usr/mdec/masterboot)}) ] ) ) (command.FuncDef name: retrieve body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:dir) op:Equal rhs:{($ VSub_Number '$1')})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:list) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(pwd)})]) left_token: <Left_Backtick '`'> ) (/) ($ VSub_Number '$2') } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:url) op: Equal rhs: {(http) (Lit_Other ':') (//www.minix3.org/) ($ VSub_Number '$3')} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:BIGPORTS) op:Equal rhs:{(bigports)})] ) (command.Subshell command_list: (command.CommandList children: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(cd)} {($ VSub_DollarName '$dir')}) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] ) (C {(echo)} { (DQ (' * Updating ') ($ VSub_DollarName '$dir') ('\n') (' from ') ($ VSub_DollarName '$url') ('\n') (' with ') ($ VSub_DollarName '$list') ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:files) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.SimpleCommand words: [ {(awk)} {(SQ <'{ print "'>) ($ VSub_DollarName '$url') (SQ <'/" $1 ".tar.bz2" }'>) } ] redirects: [ (redir.Redir op: <Redir_Less '<'> fd: 16777215 arg_word: {($ VSub_DollarName '$list')} ) ] ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(wget)} {(-c)} {($ VSub_DollarName '$url') (/List)} {($ VSub_DollarName '$files')} ) (C {(true)}) ] ) ] ) ) ] ) ) (command.FuncDef name: hdemu_root_changes body: (command.BraceGroup children: [ (C {($ VSub_DollarName '$RELEASEDIR') (/usr/bin/installboot)} {(-d)} {($ VSub_DollarName '$TMPDISK3')} {($ VSub_DollarName '$RELEASEDIR') (/usr/mdec/bootblock)} {(boot/boot)} ) (command.Pipeline children: [ (C {(echo)} { (SQ <'bootcd=2\n'> <'disable=inet\n'> <'bios_wini=yes\n'> <'bios_remap_first=1\n'> <'ramimagedev=c0d7p0s0\n'> <'bootbig(1, Regular MINIX 3) { image=/boot/image_big; boot }\n'> <'main() { trap 10000 boot ; menu; }\n'> <save> ) } ) (C {($ VSub_DollarName '$RELEASEDIR') (/usr/bin/edparams)} {($ VSub_DollarName '$TMPDISK3')} ) ] negated: F ) (command.SimpleCommand words: [ {(echo)} {(SQ <'root=/dev/c0d7p0s0\n'> <'usr=/dev/c0d7p0s2\n'> <'usr_roflag="-r"'>)} ] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/etc/fstab)} ) ] ) ] ) ) (command.FuncDef name: usb_root_changes body: (command.BraceGroup children: [ (C {($ VSub_DollarName '$RELEASEDIR') (/usr/bin/installboot)} {(-d)} {($ VSub_DollarName '$TMPDISK3')} {($ VSub_DollarName '$RELEASEDIR') (/usr/mdec/bootblock)} {(boot/boot)} ) (command.Pipeline children: [ (C {(echo)} {(SQ <'bios_wini=yes\n'> <'bios_remap_first=1\n'> <'rootdev=c0d7p0s0\n'> <save>)} ) (C {($ VSub_DollarName '$RELEASEDIR') (/usr/bin/edparams)} {($ VSub_DollarName '$TMPDISK3')} ) ] negated: F ) (command.SimpleCommand words: [{(echo)} {(SQ <'root=/dev/c0d7p0s0\n'> <'usr=/dev/c0d7p0s2\n'>)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/etc/fstab)} ) ] ) ] ) ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:RELEASEDIR) op:Equal rhs:{(/usr/r)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:RELEASEPACKAGE) op: Equal rhs: {(${ VSub_Name RELEASEDIR) (/usr/install/packages)} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:RELEASEPACKAGESOURCES) op: Equal rhs: {(${ VSub_Name RELEASEDIR) (/usr/install/package-sources)} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:IMAGE) op:Equal rhs:{(../boot/boot)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:ROOTIMAGE) op:Equal rhs:{(rootimage)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CDFILES) op: Equal rhs: {(/usr/tmp/cdreleasefiles)} ) ] ) (command.SimpleCommand words: [{(sh)} {(tell_config)} {(OS_RELEASE)} {(.)} {(OS_VERSION)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/tmp/rel.) ($ VSub_Dollar '$$')} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:version_pretty) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.SimpleCommand words: [{(sed)} {(SQ <'s/[" ]//g;/^$/d'>)}] redirects: [ (redir.Redir op: <Redir_Less '<'> fd: 16777215 arg_word: {(/tmp/rel.) ($ VSub_Dollar '$$')} ) ] ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:version) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (command.SimpleCommand words: [{(sed)} {(SQ <'s/[" ]//g;/^$/d'>)}] redirects: [ (redir.Redir op: <Redir_Less '<'> fd: 16777215 arg_word: {(/tmp/rel.) ($ VSub_Dollar '$$')} ) ] ) (C {(tr)} {(.)} {(_)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IMG_BASE) op: Equal rhs: {(minix) (${ VSub_Name version) (_ide)} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:BS) op:Equal rhs:{(4096)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:HDEMU) op:Equal rhs:{(0)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:COPY) op:Equal rhs:{(0)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:SVNREV) op:Equal rhs:{(DQ )})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:REVTAG) op:Equal rhs:{(DQ )})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:PACKAGES) op:Equal rhs:{(1)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:FILENAMEOUT) op:Equal rhs:{(DQ )})] ) (command.WhileUntil keyword: <KW_While while> cond: [(C {(getopts)} {(DQ ('s:pchu?r:f:'))} {(c)})] body: (command.DoGroup children: [ (command.Case to_match: {(DQ ($ VSub_DollarName '$c'))} arms: [ (case_arm pat_list: [{(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\?'>)}] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ('Usage: ') ($ VSub_Number '$0') (' [-p] [-c] [-h] [-r <tag>] [-u] [-f <filename>] [-s <username>]') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] ) (case_arm pat_list: [{(h)}] action: [ (C {(echo)} {(DQ (' * Making HD image'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IMG_BASE) op: Equal rhs: {(minix) (${ VSub_Name version) (_bios)} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:HDEMU) op:Equal rhs:{(1)})] ) ] ) (case_arm pat_list: [{(c)}] action: [ (C {(echo)} {(DQ (' * Copying, not SVN'))}) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:COPY) op:Equal rhs:{(1)})] ) ] ) (case_arm pat_list: [{(p)}] action: [ (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:PACKAGES) op:Equal rhs:{(0)})] ) ] ) (case_arm pat_list: [{(r)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:SVNREV) op: Equal rhs: {(-r) ($ VSub_DollarName '$OPTARG')} ) ] ) ] ) (case_arm pat_list: [{(u)}] action: [ (C {(echo)} {(DQ (' * Making live USB-stick image'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IMG_BASE) op: Equal rhs: {(minix) (${ VSub_Name version) (_usb)} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:HDEMU) op:Equal rhs:{(1)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:USB) op:Equal rhs:{(1)})] ) ] ) (case_arm pat_list: [{(f)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:FILENAMEOUT) op: Equal rhs: {(DQ ($ VSub_DollarName '$OPTARG'))} ) ] ) ] ) (case_arm pat_list: [{(s)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:USERNAME) op: Equal rhs: {(DQ ('--username=') ($ VSub_DollarName '$OPTARG'))} ) ] ) ] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(DQ ($ VSub_DollarName '$USRMB'))} {(Lit_Other ']')}) ] action: [ (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:USRMB) op:Equal rhs:{(600)})] ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_DollarName '$PACKAGES')} {(-ne)} {(0)} {(Lit_Other ']')}) ] action: [ (command.AndOr ops: [Op_DPipe] children: [(C {(mkdir)} {(-p)} {($ VSub_DollarName '$PACKAGEDIR')}) (C {(true)})] ) (command.AndOr ops: [Op_DPipe] children: [(C {(mkdir)} {(-p)} {($ VSub_DollarName '$PACKAGESOURCEDIR')}) (C {(true)})] ) (C {(rm)} {(-f)} {($ VSub_DollarName '$PACKAGEDIR') (/List)}) (C {(retrieve)} {($ VSub_DollarName '$PACKAGEDIR')} {($ VSub_DollarName '$PACKAGELIST')} {(packages/) (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(uname)} {(-p)})]) left_token: <Left_Backtick '`'> ) (/) (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(uname)} {(-r)})]) left_token: <Left_Backtick '`'> ) (.) (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(uname)} {(-v)})]) left_token: <Left_Backtick '`'> ) } ) (C {(retrieve)} {($ VSub_DollarName '$PACKAGESOURCEDIR')} {($ VSub_DollarName '$PACKAGESOURCELIST')} {(software)} ) ] ) ] ) (C {(echo)} {($ VSub_DollarName '$USRMB')} {(MB)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:USRKB) op: Equal rhs: { (word_part.ArithSubPart anode: (arith_expr.ArithBinary op_id: Arith_Star left: (arith_expr.ArithWord w:{($ VSub_DollarName '$USRMB')}) right: (arith_expr.ArithWord w:{(Lit_Digits 1024)}) ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:USRBLOCKS) op: Equal rhs: { (word_part.ArithSubPart anode: (arith_expr.ArithBinary op_id: Arith_Slash left: (arith_expr.ArithBinary op_id: Arith_Star left: (arith_expr.ArithBinary op_id: Arith_Star left: (arith_expr.ArithWord w:{($ VSub_DollarName '$USRMB')}) right: (arith_expr.ArithWord w:{(Lit_Digits 1024)}) ) right: (arith_expr.ArithWord w:{(Lit_Digits 1024)}) ) right: (arith_expr.ArithWord w:{($ VSub_DollarName '$BS')}) ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:USRSECTS) op: Equal rhs: { (word_part.ArithSubPart anode: (arith_expr.ArithBinary op_id: Arith_Star left: (arith_expr.ArithBinary op_id: Arith_Star left: (arith_expr.ArithWord w:{($ VSub_DollarName '$USRMB')}) right: (arith_expr.ArithWord w:{(Lit_Digits 1024)}) ) right: (arith_expr.ArithWord w:{(Lit_Digits 2)}) ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:ROOTKB) op:Equal rhs:{(8192)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ROOTSECTS) op: Equal rhs: { (word_part.ArithSubPart anode: (arith_expr.ArithBinary op_id: Arith_Star left: (arith_expr.ArithWord w:{($ VSub_DollarName '$ROOTKB')}) right: (arith_expr.ArithWord w:{(Lit_Digits 2)}) ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ROOTBLOCKS) op: Equal rhs: { (word_part.ArithSubPart anode: (arith_expr.ArithBinary op_id: Arith_Slash left: (arith_expr.ArithBinary op_id: Arith_Star left: (arith_expr.ArithWord w:{($ VSub_DollarName '$ROOTKB')}) right: (arith_expr.ArithWord w:{(Lit_Digits 1024)}) ) right: (arith_expr.ArithWord w:{($ VSub_DollarName '$BS')}) ) ) } ) ] ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$COPY'))} {(-ne)} {(1)} {(Lit_Other ']')}) ] action: [(C {(echo)} {(DQ ('Note: this script wants to do svn operations.'))})] ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:TMPDISK1) op:Equal rhs:{(/dev/ram0)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:TMPDISK2) op:Equal rhs:{(/dev/ram1)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:TMPDISK3) op:Equal rhs:{(/dev/ram2)})] ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-b)} {($ VSub_DollarName '$TMPDISK1')} {(-o)} {(KW_Bang '!')} {(-b)} {($ VSub_DollarName '$TMPDISK2')} {(-o)} {(KW_Bang '!')} {($ VSub_DollarName '$TMPDISK3')} {(Lit_Other ']')} ) ] action: [ (C {(echo)} { (DQ ($ VSub_DollarName '$TMPDISK1') (', ') ($ VSub_DollarName '$TMPDISK2') (' or ') ($ VSub_DollarName '$TMPDISK3') (' is not a block device..') ) } ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) ] ) (command.AndOr ops: [Op_DPipe] children: [(C {(umount)} {($ VSub_DollarName '$TMPDISK1')}) (C {(true)})] ) (command.AndOr ops: [Op_DPipe] children: [(C {(umount)} {($ VSub_DollarName '$TMPDISK2')}) (C {(true)})] ) (command.AndOr ops: [Op_DPipe] children: [(C {(umount)} {($ VSub_DollarName '$TMPDISK3')}) (C {(true)})] ) (C {(ramdisk)} {($ VSub_DollarName '$USRKB')} {($ VSub_DollarName '$TMPDISK1')}) (C {(ramdisk)} {($ VSub_DollarName '$TMPKB')} {($ VSub_DollarName '$TMPDISK2')}) (C {(ramdisk)} {($ VSub_DollarName '$ROOTKB')} {($ VSub_DollarName '$TMPDISK3')}) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_DollarName '$TMPDISK1')} {(Lit_Other '=')} {($ VSub_DollarName '$TMPDISK2')} {(-o)} {($ VSub_DollarName '$TMPDISK1')} {(Lit_Other '=')} {($ VSub_DollarName '$TMPDISK3')} {(-o)} {($ VSub_DollarName '$TMPDISK2')} {(Lit_Other '=')} {($ VSub_DollarName '$TMPDISK3')} {(Lit_Other ']')} ) ] action: [ (C {(echo)} {(DQ ("Temporary devices can't be equal."))}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) ] ) (C {(echo)} {(DQ (' * Cleanup old files'))}) (C {(rm)} {(-rf)} {($ VSub_DollarName '$RELEASEDIR')} {($ VSub_DollarName '$IMG')} {($ VSub_DollarName '$ROOTIMAGE')} {($ VSub_DollarName '$CDFILES')} {(image) (Lit_Other '*')} ) (command.AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} {($ VSub_DollarName '$CDFILES')}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEDIR')}) (command.AndOr ops: [Op_DPipe] children: [ (C {(mkfs)} {(-i)} {(2000)} {(-B)} {($ VSub_DollarName '$BS')} {(-b)} {($ VSub_DollarName '$ROOTBLOCKS')} {($ VSub_DollarName '$TMPDISK3')} ) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(mkfs)} {(-B)} {(1024)} {(-b)} {($ VSub_DollarName '$TMPKB')} {($ VSub_DollarName '$TMPDISK2')}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (C {(echo)} { (DQ (' * mounting ') ($ VSub_DollarName '$TMPDISK3') (' as ') ($ VSub_DollarName '$RELEASEDIR')) } ) (command.AndOr ops: [Op_DPipe] children: [ (C {(mount)} {($ VSub_DollarName '$TMPDISK3')} {($ VSub_DollarName '$RELEASEDIR')}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (C {(mkdir)} {(-m)} {(755)} {($ VSub_DollarName '$RELEASEDIR') (/usr)}) (C {(mkdir)} {(-m)} {(1777)} {($ VSub_DollarName '$RELEASEDIR') (/tmp)}) (C {(mount)} {($ VSub_DollarName '$TMPDISK2')} {($ VSub_DollarName '$RELEASEDIR') (/tmp)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(mkfs)} {(-B)} {($ VSub_DollarName '$BS')} {(-i)} {(30000)} {(-b)} {($ VSub_DollarName '$USRBLOCKS')} {($ VSub_DollarName '$TMPDISK1')} ) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (C {(echo)} { (DQ (' * Mounting ') ($ VSub_DollarName '$TMPDISK1') (' as ') ($ VSub_DollarName '$RELEASEDIR') (/usr) ) } ) (command.AndOr ops: [Op_DPipe] children: [ (C {(mount)} {($ VSub_DollarName '$TMPDISK1')} {($ VSub_DollarName '$RELEASEDIR') (/usr)}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEDIR') (/tmp)}) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEDIR') (/usr/tmp)}) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEDIR') (/) ($ VSub_DollarName '$XBIN')}) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEDIR') (/usr/bin)}) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEDIR') (/bin)}) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEPACKAGE')}) (C {(mkdir)} {(-p)} {($ VSub_DollarName '$RELEASEPACKAGESOURCES')}) (C {(echo)} {(DQ (' * Transfering bootstrap dirs to ') ($ VSub_DollarName '$RELEASEDIR'))}) (C {(cp)} {(-p)} {(/bin/) (Lit_Other '*')} {(/usr/bin/) (Lit_Other '*')} {($ VSub_DollarName '$RELEASEDIR') (/) ($ VSub_DollarName '$XBIN')} ) (C {(cp)} {(-rp)} {(/usr/lib)} {($ VSub_DollarName '$RELEASEDIR') (/usr)}) (C {(cp)} {(-rp)} {(/bin/bigsh)} {(/bin/sh)} {(/bin/echo)} {($ VSub_DollarName '$RELEASEDIR') (/bin)}) (C {(cp)} {(-rp)} {(/usr/bin/make)} {(/usr/bin/install)} {(/usr/bin/yacc)} {(/usr/bin/flex)} {($ VSub_DollarName '$RELEASEDIR') (/usr/bin)} ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(-d)} {($ VSub_DollarName '$PACKAGEDIR')} {(-a)} {(-d)} {($ VSub_DollarName '$PACKAGESOURCEDIR')} {(-a)} {(-f)} {($ VSub_DollarName '$PACKAGELIST')} {(-a)} {(-f)} {($ VSub_DollarName '$PACKAGESOURCELIST')} {(-a)} {($ VSub_DollarName '$PACKAGES')} {(-ne)} {(0)} {(Lit_Other ']')} ) ] action: [ (C {(echo)} { (DQ (' * Transfering ') ($ VSub_DollarName '$PACKAGEDIR') (' to ') ($ VSub_DollarName '$RELEASEPACKAGE') ) } ) (command.SimpleCommand words: [{(Lit_Other ':')}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEPACKAGE') (/List)} ) ] ) (command.ForEach iter_name: p iter_words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(cat)} {($ VSub_DollarName '$PACKAGELIST')})] ) left_token: <Left_Backtick '`'> ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(-f)} {($ VSub_DollarName '$PACKAGEDIR') (/) ($ VSub_DollarName '$p') (.tar.bz2) } {(Lit_Other ']')} ) ] action: [ (C {(cp)} {($ VSub_DollarName '$PACKAGEDIR') (/) ($ VSub_DollarName '$p') (.tar.bz2) } {($ VSub_DollarName '$RELEASEPACKAGE') (/)} ) (command.AndOr ops: [Op_DPipe] children: [ (command.SimpleCommand words: [ {(grep)} {(DQ ('^') ($ VSub_DollarName '$p') ('|'))} {($ VSub_DollarName '$PACKAGEDIR') (/List)} ] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEPACKAGE') (/List)} ) ] ) (C {(echo)} {(DQ ($ VSub_DollarName '$p') (' not found in List'))}) ] ) ] ) ] else_action: [ (C {(echo)} { (DQ ("Can't copy ") ($ VSub_DollarName '$PACKAGEDIR') (/) ($ VSub_DollarName '$p') ('.tar.bz2. Missing.') ) } ) ] ) ] ) ) (C {(echo)} { (DQ (' * Transfering ') ($ VSub_DollarName '$PACKAGESOURCEDIR') (' to ') ($ VSub_DollarName '$RELEASEPACKAGESOURCES') ) } ) (command.ForEach iter_name: p iter_words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(cat)} {($ VSub_DollarName '$PACKAGESOURCELIST')})] ) left_token: <Left_Backtick '`'> ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(-f)} {($ VSub_DollarName '$PACKAGESOURCEDIR') (/) ($ VSub_DollarName '$p') (.tar.bz2) } {(Lit_Other ']')} ) ] action: [ (C {(cp)} {($ VSub_DollarName '$PACKAGESOURCEDIR') (/) ($ VSub_DollarName '$p') (.tar.bz2) } {($ VSub_DollarName '$RELEASEPACKAGESOURCES') (/)} ) ] ) ] else_action: [ (C {(echo)} { (DQ ("Can't copy ") ($ VSub_DollarName '$PACKAGESOURCEDIR') (/) ($ VSub_DollarName '$p') ('.tar.bz2. Missing.') ) } ) ] ) ] ) ) ] ) ] ) (C {(chown)} {(-R)} {(bin)} {($ VSub_DollarName '$RELEASEDIR') (/usr/lib)}) (C {(chmod)} {(-R)} {(u) (Lit_Other '+') (w)} {($ VSub_DollarName '$RELEASEDIR') (/usr/lib)}) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$COPY'))} {(-ne)} {(1)} {(Lit_Other ']')}) ] action: [ (C {(echo)} {(DQ (' * Doing new svn export'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TOOLSREPO) op: Equal rhs: { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(svn)} {(info)}) (C {(grep)} {(SQ <'^URL: '>)}) (C {(awk)} {(SQ <'{ print $2 }'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:REPO) op: Equal rhs: { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {($ VSub_DollarName '$TOOLSREPO')}) (C {(sed)} {(SQ <'s/.tools$//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:BRANCHNAME) op: Equal rhs: { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {($ VSub_DollarName '$REPO')}) (C {(awk)} {(-F/)} {(SQ <'{ print $NF }'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> ) ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:REVISION) op: Equal rhs: { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(svn)} {(info)} {($ VSub_DollarName '$USERNAME')} {($ VSub_DollarName '$SVNREV')} {($ VSub_DollarName '$REPO')} ) (C {(grep)} {(SQ <'^Revision: '>)}) (C {(awk)} {(SQ <'{ print $2 }'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> ) ) } ) ] ) (C {(echo)} { (DQ ('Doing export of revision ') ($ VSub_DollarName '$REVISION') (' from ') ($ VSub_DollarName '$REPO') (.) ) } ) (command.Subshell command_list: (command.CommandList children: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(cd)} {($ VSub_DollarName '$RELEASEDIR') (/usr)}) (C {(svn)} {(-q)} {($ VSub_DollarName '$USERNAME')} {(export)} {(-r) ($ VSub_DollarName '$REVISION')} {($ VSub_DollarName '$REPO')} {($ VSub_DollarName '$SRC')} ) ] ) ] ) ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_DollarName '$BRANCHNAME')} {(Lit_Other '=')} {(src)} {(Lit_Other ']')} ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:REVTAG) op: Equal rhs: {(r) ($ VSub_DollarName '$REVISION')} ) ] ) ] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:REVTAG) op: Equal rhs: {(branch-) ($ VSub_DollarName '$BRANCHNAME') (-r) ($ VSub_DollarName '$REVISION') } ) ] ) ] ) (command.SimpleCommand words: [ {(echo)} { (DQ ('\n') ('\n') ('/* Added by release script */\n') ('#ifndef _SVN_REVISION\n') ('#define _SVN_REVISION ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_DollarName '$REVTAG') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('#endif') ) } ] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/usr/src/include/minix/sys_config.h)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$USB'))} {(-ne)} {(0)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IMG) op: Equal rhs: {(${ VSub_Name IMG_BASE) (_) (${ VSub_Name REVTAG) (.img)} ) ] ) ] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IMG) op: Equal rhs: {(${ VSub_Name IMG_BASE) (_) (${ VSub_Name REVTAG) (.iso)} ) ] ) ] ) ] ) ] else_action: [ (command.Subshell command_list: (command.CommandList children: [ (command.AndOr ops: [Op_DAmp Op_DAmp] children: [(C {(cd)} {(..)}) (C {(make)} {(depend)}) (C {(make)} {(clean)})] ) ] ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:srcdir) op: Equal rhs: {(/usr/) ($ VSub_DollarName '$SRC')} ) ] ) (command.Pipeline children: [ (command.Subshell command_list: (command.CommandList children: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(cd)} {($ VSub_DollarName '$srcdir')}) (C {(tar)} {(cf)} {(-)} {(.)}) ] ) ] ) ) (command.Subshell command_list: (command.CommandList children: [ (command.AndOr ops: [Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(cd)} {($ VSub_DollarName '$RELEASEDIR') (/usr)}) (C {(mkdir)} {($ VSub_DollarName '$SRC')}) (C {(cd)} {($ VSub_DollarName '$SRC')}) (C {(tar)} {(xf)} {(-)}) ] ) ] ) ) ] negated: F ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:REVTAG) op:Equal rhs:{(copy)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:REVISION) op:Equal rhs:{(unknown)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IMG) op: Equal rhs: {(${ VSub_Name IMG_BASE) (_copy.iso)} ) ] ) ] ) (C {(echo)} {(DQ (' * Fixups for owners and modes of dirs and files'))}) (C {(chown)} {(-R)} {(bin)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC')}) (C {(chmod)} {(-R)} {(u) (Lit_Other '+') (w)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC')} ) (command.Pipeline children: [ (C {(find)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC')} {(-type)} {(d)} ) (C {(xargs)} {(chmod)} {(755)}) ] negated: F ) (command.Pipeline children: [ (C {(find)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC')} {(-type)} {(f)} ) (C {(xargs)} {(chmod)} {(644)}) ] negated: F ) (command.Pipeline children: [ (C {(find)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC')} {(-name)} {(configure)} ) (C {(xargs)} {(chmod)} {(755)}) ] negated: F ) (command.Pipeline children: [ (C {(find)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC') (/commands)} {(-name)} {(build)} ) (C {(xargs)} {(chmod)} {(755)}) ] negated: F ) (C {(rm)} {(-rf)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC') (/doc/bugs)}) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$USB'))} {(-eq)} {(0)} {(Lit_Other ']')}) ] action: [ (command.SimpleCommand words: [{(date)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/CD)} ) ] ) ] ) ] ) (C {(echo)} {(DQ (' * Chroot build'))}) (C {(cp)} {(chrootmake.sh)} {($ VSub_DollarName '$RELEASEDIR') (/usr/) ($ VSub_DollarName '$SRC') (/tools/chrootmake.sh)} ) (command.AndOr ops: [Op_DPipe] children: [ (C {(chroot)} {($ VSub_DollarName '$RELEASEDIR')} { (DQ ('PATH=/') ($ VSub_DollarName '$XBIN') (' sh -x /usr/') ($ VSub_DollarName '$SRC') (/tools/chrootmake.sh) ) } ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (C {(cp)} {($ VSub_DollarName '$RELEASEDIR') (/boot/image_big)} {(image)}) (C {(echo)} {(DQ (' * Chroot build done'))}) (C {(echo)} {(DQ (' * Removing bootstrap files'))}) (C {(rm)} {(-rf)} {($ VSub_DollarName '$RELEASEDIR') (/) ($ VSub_DollarName '$XBIN')}) (C {(chown)} {(-R)} {(bin)} {($ VSub_DollarName '$RELEASEDIR') (/usr/src) (Lit_Other '*')}) (C {(cp)} {(issue.install)} {($ VSub_DollarName '$RELEASEDIR') (/etc/issue)}) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$USB'))} {(-ne)} {(0)} {(Lit_Other ']')}) ] action: [(C {(usb_root_changes)})] ) (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$HDEMU'))} {(-ne)} {(0)} {(Lit_Other ']')}) ] action: [(C {(hdemu_root_changes)})] ) ] ) (command.SimpleCommand words: [ {(echo)} {($ VSub_DollarName '$version_pretty') (Lit_Comma ',')} {(SVN)} {(revision)} {($ VSub_DollarName '$REVISION') (Lit_Comma ',')} {(generated)} { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(date)})]) left_token: <Left_Backtick '`'> ) } ] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/etc/version)} ) ] ) (C {(echo)} {(DQ (' * Counting files'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:extrakb) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(du)} {(-s)} {($ VSub_DollarName '$RELEASEDIR') (/usr/install)}) (C {(awk)} {(SQ <'{ print $1 }'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.SimpleCommand words: [ {(expr)} { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(df)} {($ VSub_DollarName '$TMPDISK1')}) (C {(tail)} {(-1)}) (C {(awk)} {(SQ <'{ print $4 }'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> ) } {(-)} {($ VSub_DollarName '$extrakb')} ] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/.usrkb)} ) ] ) (command.Pipeline children: [ (C {(find)} {($ VSub_DollarName '$RELEASEDIR') (/usr)}) (C {(fgrep)} {(-v)} {(/install/)}) (command.SimpleCommand words: [{(wc)} {(-l)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/.usrfiles)} ) ] ) ] negated: F ) (command.Pipeline children: [ (C {(find)} {($ VSub_DollarName '$RELEASEDIR')} {(-xdev)}) (command.SimpleCommand words: [{(wc)} {(-l)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$RELEASEDIR') (/.rootfiles)} ) ] ) ] negated: F ) (C {(echo)} {(DQ (' * Zeroing remainder of temporary areas'))}) (C {(df)} {($ VSub_DollarName '$TMPDISK1')}) (C {(df)} {($ VSub_DollarName '$TMPDISK3')}) (command.AndOr ops: [Op_DPipe] children: [ (command.SimpleCommand words: [{(cp)} {(/dev/zero)} {($ VSub_DollarName '$RELEASEDIR') (/usr/.x)}] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (C {(true)}) ] ) (C {(rm)} {($ VSub_DollarName '$RELEASEDIR') (/usr/.x)}) (command.AndOr ops: [Op_DPipe] children: [ (command.SimpleCommand words: [{(cp)} {(/dev/zero)} {($ VSub_DollarName '$RELEASEDIR') (/.x)}] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) (C {(true)}) ] ) (C {(rm)} {($ VSub_DollarName '$RELEASEDIR') (/.x)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(umount)} {($ VSub_DollarName '$TMPDISK1')}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(umount)} {($ VSub_DollarName '$TMPDISK2')}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(umount)} {($ VSub_DollarName '$TMPDISK3')}) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) (C {(edparams)} {($ VSub_DollarName '$TMPDISK3')} { (SQ <'unset bootopts;\n'> <'unset servers;\n'> <'unset rootdev;\n'> <'unset leader;\n'> <'unset image;\n'> <'disable=inet;\n'> <'bootcd=1;\n'> <'cdproberoot=1;\n'> <'ata_id_timeout=2;\n'> <'bootbig(1, Regular MINIX 3) { unset image; boot }\n'> < 'leader() { echo \\n--- Welcome to MINIX 3. This is the boot monitor. ---\\n\\nChoose an option from the menu or press ESC if you need to do anything special.\\nOtherwise I will boot with my defaults in 10 seconds.\\n\\n }; main(){trap 10000 boot; menu; };\n' > <save> ) } ) (command.Subshell command_list: (command.CommandList children: [(command.AndOr ops:[Op_DAmp] children:[(C {(cd)} {(../boot)}) (C {(make)})])] ) ) (C {(dd)} {(Lit_VarLike 'if=') ($ VSub_DollarName '$TMPDISK3')} {(Lit_VarLike 'of=') ($ VSub_DollarName '$ROOTIMAGE')} {(Lit_VarLike 'bs=') ($ VSub_DollarName '$BS')} {(Lit_VarLike 'count=') ($ VSub_DollarName '$ROOTBLOCKS')} ) (command.AndOr ops: [Op_DPipe] children: [ (C {(cp)} {(release/cd/) (Lit_Other '*')} {($ VSub_DollarName '$CDFILES')}) (C {(true)}) ] ) (command.SimpleCommand words: [ {(echo)} { (DQ ('This is Minix version ') ($ VSub_DollarName '$version_pretty') (' prepared ') (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(date)})]) left_token: <Left_Backtick '`'> ) (.) ) } ] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$CDFILES') (/VERSION.TXT)} ) ] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:boottype) op:Equal rhs:{(-n)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:bootimage) op: Equal rhs: {($ VSub_DollarName '$IMAGE')} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$HDEMU'))} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(make_hdimage)}) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:boottype) op:Equal rhs:{(SQ <-h>)})] ) (command.Assignment keyword: Assign_None pairs: [(assign_pair lhs:(lhs_expr.LhsName name:bootimage) op:Equal rhs:{(hdimage)})] ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$USB'))} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [(C {(mv)} {($ VSub_DollarName '$bootimage')} {($ VSub_DollarName '$IMG')})] ) ] else_action: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(writeisofs)} {(-s0x1000)} {(-l)} {(MINIX)} {(-b)} {($ VSub_DollarName '$bootimage')} {($ VSub_DollarName '$boottype')} {($ VSub_DollarName '$CDFILES')} {($ VSub_DollarName '$IMG')} ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (command.If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$HDEMU'))} {(-eq)} {(0)} {(Lit_Other ']')}) ] action: [ (C {(echo)} {(DQ ('Appending Minix root and usr filesystem'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:isobytes) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(stat)} {(-size)} {($ VSub_DollarName '$IMG')})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:isosects) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(expr)} {($ VSub_DollarName '$isobytes')} {(/)} {(512)})] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:isopad) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(expr)} {($ VSub_DollarName '$secs')} {(-)} {(SQ <'('>)} {($ VSub_DollarName '$isosects')} {(Lit_Other '%')} {($ VSub_DollarName '$secs')} {(SQ <')'>)} ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.SimpleCommand words: [ {(dd)} {(Lit_VarLike 'if=') (/dev/zero)} {(Lit_VarLike 'count=') ($ VSub_DollarName '$isopad')} ] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {($ VSub_DollarName '$IMG')} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:isosects) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(expr)} {($ VSub_DollarName '$isosects')} {(Lit_Other '+')} {($ VSub_DollarName '$isopad')} ) ] ) left_token: <Left_Backtick '`'> ) } ) ] ) (command.Subshell command_list: (command.CommandList children: [ (command.Sentence child: (C {(cat)} {($ VSub_DollarName '$IMG')} {($ VSub_DollarName '$ROOTIMAGE')}) terminator: <Op_Semi ';'> ) (C {(dd)} {(Lit_VarLike 'if=') ($ VSub_DollarName '$TMPDISK1')} {(Lit_VarLike 'bs=') ($ VSub_DollarName '$BS')} {(Lit_VarLike 'count=') ($ VSub_DollarName '$USRBLOCKS')} ) ] ) redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(m)})] ) (C {(mv)} {(m)} {($ VSub_DollarName '$IMG')}) (C {(installboot)} {(-m)} {($ VSub_DollarName '$IMG')} {(/usr/mdec/masterboot)}) (C {(partition)} {(-m)} {($ VSub_DollarName '$IMG')} {(0)} {(81) (Lit_Other ':') ($ VSub_DollarName '$isosects')} {(81) (Lit_Other ':') ($ VSub_DollarName '$ROOTSECTS')} {(81) (Lit_Other ':') ($ VSub_DollarName '$USRSECTS')} ) ] ) ] ) ] ) (command.If arms: [ (if_arm cond: [(C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$FILENAMEOUT'))} {(Lit_Other ']')})] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ($ VSub_DollarName '$IMG'))}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {($ VSub_DollarName '$FILENAMEOUT')} ) ] ) ] ) ] ) ] )