(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<mumudvb>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_pkgname)
          op: assign_op.Equal
          rhs: {<MuMuDVB>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<2.1.0>}
          spids: [12]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<0>}
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'A DVB IPTV streaming software'>)}
          spids: [18]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'http://mumudvb.braice.net/'>)}
          spids: [23]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {(DQ <all>)}
          spids: [28]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(DQ <GPL2>)}
          spids: [33]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [38]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ <'automake autoconf libtool linux-headers m4 libdvbcsa-dev asciidoc gettext-dev'>)}
          spids: [42]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:install)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <.pre-install>)}
          spids: [47]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <-doc>)}
          spids: [53]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgusers)
          op: assign_op.Equal
          rhs: {(DQ <mumudvb>)}
          spids: [59]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ ($ Id.VSub_DollarName '$pkgname') <-> ($ Id.VSub_DollarName '$pkgver') 
                <'.tar.gz::https://github.com/braice/MuMuDVB/archive/'> ($ Id.VSub_DollarName '$pkgver') <'.tar.gz\n'> <'musl-error-h.patch\n'> 
                ($ Id.VSub_DollarName '$pkgname') <'.initd\n'> ($ Id.VSub_DollarName '$pkgname') <.confd>
              )
            }
          spids: [64]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:builddir)
          op: assign_op.Equal
          rhs: 
            {
              (DQ ($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$_pkgname') <-> 
                ($ Id.VSub_DollarName '$pkgver')
              )
            }
          spids: [79]
        )
      ]
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<libtoolize>} {<--force>})
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [(C {<aclocal>}) (C {<autoheader>})]
            )
            (C {<automake>} {<--force-missing>} {<--add-missing>})
            (C {<autoreconf>} {<-i>} {<-f>})
            (C {<'./configure'>} {<--prefix> <Id.Lit_Equals '='> <'/usr'>})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<make>})
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
          ]
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<make>} {<Id.Lit_VarLike 'DESTDIR='> (DQ ($ Id.VSub_DollarName '$pkgdir'))} {<install>})
            (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/var/run/mumudvb'>})
            (C {<chown>} {($ Id.VSub_DollarName '$pkgusers')} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/var/run/mumudvb'>}
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<install>} {<-m755>} {<-D>} 
                  {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$pkgname') 
                    <.initd>
                  } {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/init.d/'> ($ Id.VSub_DollarName '$pkgname')}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<install>} {<-m755>} {<-D>} 
                  {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$pkgname') 
                    <.confd>
                  } {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/conf.d/'> ($ Id.VSub_DollarName '$pkgname')}
                )
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (C {<mkdir>} {<-p>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/etc/'> ($ Id.VSub_DollarName '$pkgname')}
            )
          ]
        )
    )
    (command.ShFunction
      name: doc
      body: 
        (BraceGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:pkgdesc)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <' documentation'>)}
                  spids: [268]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_docdir)
                  op: assign_op.Equal
                  rhs: {(DQ <'configuration_examples diagrams html transcode'>)}
                  spids: [275]
                )
              ]
            )
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir')) <'/doc'>})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<make>} {<doc>})
                (command.ControlFlow
                  token: <Id.ControlFlow_Return return>
                  arg_word: {<1>}
                )
              ]
            )
            (C {<mkdir>} {<-p>} 
              {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/share/doc/'> 
                ($ Id.VSub_DollarName '$pkgname')
              }
            )
            (command.ForEach
              iter_name: doc
              iter_words: [{($ Id.VSub_DollarName '$_docdir')}]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (C {<mv>} {($ Id.VSub_DollarName '$doc')} 
                      {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/usr/share/doc/'> 
                        ($ Id.VSub_DollarName '$pkgname')
                      }
                    )
                  ]
                )
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'e300d0f9624a7a5d108ded303b11ef7f399968357540f681ae772efe2a36d32883c69f20e41f8372c0f9c39393c71f2eddb04c59bfadf71a0f575ea160a27cf2  mumudvb-2.1.0.tar.gz\n'
                > 
                <
'83228d1ea51b892779d284e443477332f92bc27d5806294774ff6eb93c5b4896dbd04367559a03268aa9994f8555c748e82075e4b86b01866a65662bf5c00824  musl-error-h.patch\n'
                > 
                <
'a59a282e04e72bb75e365f36dd4af7560826e8803f0ffa0244c59b2c88bf3e822d846358ababc74aa04de4758880a5bd53e02e3537b8ced0a23aea5360832709  mumudvb.initd\n'
                > 
                <
'777096785f71f22e9b1462d8bd9a0dba39bda63fa9493d8431140cc09addfac6ce9f962c60aa50b6f331d8ecbaef8e1340cf401aa3caeb743d3a396326f28efa  mumudvb.confd'
                >
              )
            }
          spids: [339]
        )
      ]
    )
  ]
)