Remove useless echo flags and use read's -p flag where a combination of echo and read were previously used (empty echos are still used around reads to make newlines)
Read commands for passwords now use the -r flag to prevent backslash escapes from being interpreted
Get rid of useless elif in 1-setup.sh by separating patterns with a "|"
Moved subvolume names to an array and put subvolume creation/mounting/mkdir commands inside loops that use it
Shorten sed expressions that add/remove comments (based on section 4.1 of the GNU sed manual)
's/^<pattern>/# <pattern>/ to 's/^<pattern>/# &/
s/^#<pattern>/<pattern>/ to /^#<pattern>/s/^#//
Minor typo fixes
Make disk formatting warning red and bold to be more obvious
Remove trailing whitespaces
Change any if/while/loop statements with the then/do on the line below to be on the same line, separated with a colon to reduce vertical space
's/^<pattern>/# <pattern>/
to's/^<pattern>/# &/
s/^#<pattern>/<pattern>/
to/^#<pattern>/s/^#//
(Draft since I haven't tested it)