(command.CommandList children: [ (C {<set>} {<-o>} {<nounset>}) (C {<set>} {<-o>} {<pipefail>}) (C {<set>} {<-o>} {<errexit>}) (C {<readonly>} {<Id.Lit_VarLike 'ROOTFS_URL='> (SQ < 'http://dl-cdn.alpinelinux.org/alpine/v3.6/releases/x86_64/alpine-minirootfs-3.6.2-x86_64.tar.gz' > ) } ) (C {<readonly>} {<Id.Lit_VarLike 'CHROOT_DIR='> <'_chroot/alpine1'>}) (C {<readonly>} {<Id.Lit_VarLike 'DISTRO_BUILD_CHROOT_DIR='> <'_chroot/alpine-distro-build'>}) (command.ShFunction name: download body: (BraceGroup children: [ (C {<wget>} {<--no-clobber>} {<--directory>} {<_tmp>} {($ Id.VSub_DollarName '$ROOTFS_URL')}) ] ) ) (command.ShFunction name: _extract body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'dest='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (C {<local>} {<Id.Lit_VarLike 'tarball='> <'_tmp/'> (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<basename>} {($ Id.VSub_DollarName '$ROOTFS_URL')}) ) } ) (C {<mkdir>} {<-p>} {($ Id.VSub_DollarName '$dest')}) (command.Simple words: [ {<tar>} {<--extract>} {<--gzip>} {<--verbose>} {<--directory>} {($ Id.VSub_DollarName '$dest')} ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName '$tarball')} ) ] do_fork: T ) ] ) ) (command.ShFunction name: extract body: (BraceGroup children: [ (command.Sentence child: (C {<sudo>} {($ Id.VSub_Number '$0')} {<_extract>} {(DQ ($ Id.VSub_At '$@'))}) terminator: <Id.Op_Semi _> ) ] ) ) (command.ShFunction name: extract-distro-build body: (BraceGroup children: [ (command.Sentence child: (C {<sudo>} {($ Id.VSub_Number '$0')} {<_extract>} {($ Id.VSub_DollarName '$DISTRO_BUILD_CHROOT_DIR')} ) terminator: <Id.Op_Semi _> ) ] ) ) (command.ShFunction name: chmod-chroot body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'dest='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (C {<sudo>} {<chmod>} {<755>} {($ Id.VSub_DollarName '$dest')}) ] ) ) (command.ShFunction name: _setup-dns body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$chroot_dir') <'/etc/resolv.conf'>} ) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 255 stdin_parts: [<'nameserver 8.8.8.8\n'> <'nameserver 8.8.4.4\n'>] ) ) ] do_fork: T ) ] ) ) (command.ShFunction name: setup-dns body: (BraceGroup children: [ (command.Sentence child: (C {<sudo>} {($ Id.VSub_Number '$0')} {<_setup-dns>} {(DQ ($ Id.VSub_At '$@'))}) terminator: <Id.Op_Semi _> ) ] ) ) (command.ShFunction name: add-oil-build-deps body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (command.Simple words: [{<sudo>} {<chroot>} {($ Id.VSub_DollarName '$chroot_dir')} {<'/bin/sh'>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 312 stdin_parts: [<'apk update\n'> <'apk add bash make gcc musl-dev \n'>] ) ) ] do_fork: T ) ] ) ) (command.ShFunction name: add-alpine-sdk body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$DISTRO_BUILD_CHROOT_DIR')} ) ) } ) (command.Simple words: [{<sudo>} {<chroot>} {($ Id.VSub_DollarName '$chroot_dir')} {<'/bin/sh'>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 369 stdin_parts: [<'apk update\n'> <'apk add bash alpine-sdk\n'>] ) ) ] do_fork: T ) ] ) ) (command.ShFunction name: list-packages body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$DISTRO_BUILD_CHROOT_DIR')} ) ) } ) (C {<sudo>} {<chroot>} {($ Id.VSub_DollarName '$chroot_dir')} {<apk>} {<info>}) ] ) ) (command.ShFunction name: destroy-chroot body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (C {<sudo>} {<rm>} {<-r>} {<-rf>} {($ Id.VSub_DollarName '$chroot_dir')}) ] ) ) (command.ShFunction name: enter-chroot body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (C {<shift>}) (C {<sudo>} {<chroot>} {($ Id.VSub_DollarName '$chroot_dir')} {(DQ ($ Id.VSub_At '$@'))}) ] ) ) (command.ShFunction name: interactive body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (C {<enter-chroot>} {($ Id.VSub_DollarName '$chroot_dir')} {<'/bin/sh'>}) ] ) ) (C {<readonly>} {<Id.Lit_VarLike 'OIL_VERSION='> (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<head>} {<-n>} {<1>} {<oil-version.txt>}) ) } ) (command.ShFunction name: _copy-tar body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (C {<local>} {<Id.Lit_VarLike 'name='> (braced_var_sub token: <Id.VSub_Number 2> suffix_op: (suffix_op.Unary tok:<Id.VTest_ColonHyphen ':-'> arg_word:{<oil>}) ) } ) (C {<local>} {<Id.Lit_VarLike 'version='> (braced_var_sub token: <Id.VSub_Number 3> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$OIL_VERSION')} ) ) } ) (C {<local>} {<Id.Lit_VarLike 'dest='> ($ Id.VSub_DollarName '$chroot_dir') <'/src'>}) (C {<mkdir>} {<-p>} {($ Id.VSub_DollarName '$dest')}) (C {<cp>} {<-v>} {<'_release/'> ($ Id.VSub_DollarName '$name') <-> ($ Id.VSub_DollarName '$version') <.tar.gz> } {($ Id.VSub_DollarName '$dest')} ) ] ) ) (command.ShFunction name: copy-tar body: (BraceGroup children: [ (command.Sentence child: (C {<sudo>} {($ Id.VSub_Number '$0')} {<_copy-tar>} {(DQ ($ Id.VSub_At '$@'))}) terminator: <Id.Op_Semi _> ) ] ) ) (command.ShFunction name: _test-tar body: (BraceGroup children: [ (C {<local>} {<Id.Lit_VarLike 'chroot_dir='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$CHROOT_DIR')} ) ) } ) (C {<local>} {<Id.Lit_VarLike 'name='> (braced_var_sub token: <Id.VSub_Number 2> suffix_op: (suffix_op.Unary tok:<Id.VTest_ColonHyphen ':-'> arg_word:{<oil>}) ) } ) (C {<local>} {<Id.Lit_VarLike 'version='> (braced_var_sub token: <Id.VSub_Number 3> suffix_op: (suffix_op.Unary tok: <Id.VTest_ColonHyphen ':-'> arg_word: {($ Id.VSub_DollarName '$OIL_VERSION')} ) ) } ) (C {<local>} {<Id.Lit_VarLike 'target='> <'_bin/'> (${ Id.VSub_Name name) <.ovm>}) (command.Simple words: [{<enter-chroot>} {(DQ ($ Id.VSub_DollarName '$chroot_dir'))} {<'/bin/sh'>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 705 stdin_parts: [ <'set -e\n'> <'cd src\n'> <'tar --extract -z < '> ($ Id.VSub_DollarName '$name') <-> ($ Id.VSub_DollarName '$version') <'.tar.gz\n'> <'cd '> ($ Id.VSub_DollarName '$name') <-> ($ Id.VSub_DollarName '$version') <'\n'> <'./configure\n'> <'time make '> ($ Id.VSub_DollarName '$target') <'\n'> <'echo\n'> <'echo '> <Id.Right_DoubleQuote '"'> <'*** Running '> ($ Id.VSub_DollarName '$target') <Id.Right_DoubleQuote '"'> <'\n'> <'#PYTHONVERBOSE=9 \n'> ($ Id.VSub_DollarName '$target') <' --version\n'> <'./install\n'> <'echo\n'> <'echo '> <Id.Right_DoubleQuote '"'> <'*** Running osh'> <Id.Right_DoubleQuote '"'> <'\n'> <'osh --version\n'> <'echo status='> ($ Id.VSub_QMark '$?') <'\n'> <'echo DONE\n'> ] ) ) ] do_fork: T ) ] ) ) (command.ShFunction name: test-tar body: (BraceGroup children: [ (command.Sentence child: (C {<sudo>} {($ Id.VSub_Number '$0')} {<_test-tar>} {(DQ ($ Id.VSub_At '$@'))}) terminator: <Id.Op_Semi _> ) ] ) ) (C {(DQ ($ Id.VSub_At '$@'))}) ] )