X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=mw-setup-script;h=d13c69644db986c16cda42a6a5ddb5018b464f68;hb=fb8c514f359f6fcb443d774c3c305f804a853857;hp=1c356d4e587149fba6306c5994d677391b45a540;hpb=ce5dbd53563bcdf13451a7226566447dcc9a519f;p=mediawiki-setup diff --git a/mw-setup-script b/mw-setup-script index 1c356d4..d13c696 100755 --- a/mw-setup-script +++ b/mw-setup-script @@ -3,6 +3,9 @@ # This program is under GPL v. 3 or later, see set -x # +apt-get install --install-suggests jessie-backports certbot +# +# # identify if this is a debian based distro isdeb() { command -v apt &>/dev/null; } # tee unique. append each stdin line if it does not exist in the file @@ -123,18 +126,26 @@ else fi -# slightly different depending on if we already set the root pass -if echo exit|mysql -u root -p"$dbpass"; then - # answer interactive prompts: - # mysql root pass, change pass? no, remove anon users? (default, yes) - # disallow remote root (default, yes), reload? (default, yes) - echo -e "$dbpass\nn\n\n\n\n" | mysql_secure_installation -else - # I had 1 less newline at the start when doing ubuntu 14.04, +# skip if we already set the root pass and are on pre-debian 9. +if ! echo exit|mysql -uroot "-p$dbpass"; then + # Note: we set a root password here, but in debian 9+, it is ignored; + # only the local user root can login, and any password is accepted. + # We answer these interactive prompts: + # Enter current password for root (enter for none): + # Set root password? [Y/n] + # New password: + # Re-enter new password: + # Remove anonymous users? [Y/n] + # Disallow root login remotely? [Y/n] + # Remove test database and access to it? [Y/n] + # Reload privilege tables now? [Y/n] + # Note, I had 1 less newline at the start when doing ubuntu 14.04, # compared to debian 8, so can't say this is especially portable. - # It won't hurt if it fails. echo -e "\n\n$dbpass\n$dbpass\n\n\n\n\n" | mysql_secure_installation fi +mysql -uroot "-p$dbpass" < # mkdir -p $mw @@ -162,12 +173,12 @@ cd .. # Drop any previous database which may have been installed while testing. # If upgrading, we should have a db backup which will get restored. # https://www.mediawiki.org/wiki/Manual:Upgrading -mysql -u root -p$dbpass <<'EOF' ||: +mysql -uroot "-p$dbpass" <<'EOF' ||: drop database my_wiki; exit EOF php $mw/maintenance/install.php --pass $wikipass --scriptpath /w \ - --dbuser root --dbpass $dbpass "$mwdescription" "$wikiuser" + --dbuser wikiuser --dbpass $dbpass "$mwdescription" "$wikiuser" teeu $mwc <<'EOF' # lock down the wiki to only the initial owner until anti-spam measures are put in place # limit edits to registered users @@ -177,16 +188,11 @@ $wgGroupPermissions['*']['createaccount'] = false; EOF # # -temp=$(mktemp -d) -cd $temp -git_site=https://iankelling.org/git -git clone $git_site/acme-tiny-wrapper l=$mw/../../logs mkdir -p $l - -acme-tiny-wrapper/acme-tiny-wrapper -t $mwdomain - -git clone $git_site/basic-https-conf +temp=$(mktemp -d) +cd $temp +git clone https://iankelling.org/git/basic-https-conf { cat <\n $(< $line)\n"; done -} | basic-https-conf/apache-site -r ${mw%/*} - $mwdomain +} | basic-https-conf/web-conf -r ${mw%/*} - apache2 $mwdomain cd rm -rf $temp # @@ -511,25 +517,19 @@ x("MediaWiki:Sidebar", """* navigation # remove side panel # helpfull doc: https://www.mediawiki.org/wiki/Manual:Interface/Sidebar x("mediawiki:Common.css", """/* adjust sidebar to just be home link and up top */ +/* adjust sidebar to just be home link and up top */ /* panel width increased to fit full wiki name. */ +/* selectors other than final id are for increasing priority of rule */ div#mw-panel { top: 10px; padding-top: 0em; width: 20em } div#footer, #mw-head-base, div#content { margin-left: 1em; } #left-navigation { margin-left: 1em; } /* logo, and toolbar hidden */ -#p-logo, #p-tb.portal { +#p-logo, div#mw-navigation div#mw-panel #p-tb { display:none; } -/* make the font size smaller for the misc stuff */ -#p-personal { - font-size: 0.8em; -} - -#footer-info { - font-size: 0.8em; -} div#mw-content-text { max-width: 720px; }