This document describes issues and notes on running OSH as Shell replacement in package building (either as /bin/bash and/or /bin/sh)
Oily Nixpkgs is an attempt at replacing bash with Oils in the stdenv.
"${a[@]+default}" doesn't properly expand as bash${mystr[@]} errors (e.g. it's a string) are often silent in bash:& and ;;& in a case statement are missing in Oilsexport x; x=(a b c) fails as only strings can be exportedlet is not implemented
(( EXPR )) | true, path in oily-nixpkgs${myarr[a]-} needs to be ${myarr['a']} in Osh. See also blog post
[[ -v assoc[arr] ]] failed silently. Fixed but need to find link in zulip[ ... =~ ... ](-...-=~-...-.html) are a syntax err in Oilsif (( )); then doesn't work on bash
if (( 0 ));(( a ) b ) is parsed as arithmetic in Osh
ending in a syntax err instead of as nested subshells
IFS=\
check_ifs_backshlash_broken=:read -u $FD is not implemented (fix: read <&$FD)make in different directory fails with Directory not foundOily Pine is an attempt at replacing /bin/sh and /bin/bash with Oils using the package in testing which provides packages oils-for-unix-binsh and oils-for-unix-bash.
make in different directory fails with Directory not found found in nixpkgs=word is a parsing error in OSH (should return =word command not found when executed - shopt -s strict_eval should be ysh only)Related: Running ble.sh with OSH