mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-21 19:42:24 +01:00
system/webmin: Added to 12.0 repository
This commit is contained in:
parent
16868a57c4
commit
4799691c4e
6 changed files with 297 additions and 0 deletions
28
system/webmin/README
Normal file
28
system/webmin/README
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
Webmin is a web-based interface for system administration for Unix.
|
||||||
|
Using any modern web browser, you can setup user accounts, Apache,
|
||||||
|
DNS, file sharing, and much more. Webmin removes the need to manually
|
||||||
|
edit Unix configuration files like /etc/passwd and lets you manage
|
||||||
|
a system from the console or remotely.
|
||||||
|
|
||||||
|
Webmin consists of a simple web server and a number of CGI programs
|
||||||
|
which directly update system files like /etc/inetd.conf and /etc/passwd.
|
||||||
|
The web server and all CGI programs are written in Perl version 5, and use
|
||||||
|
only the standard perl modules.
|
||||||
|
|
||||||
|
Some modules will require manual configuration from within webmin.
|
||||||
|
Login with root and root's password.
|
||||||
|
|
||||||
|
If you need to start webmin at boot.
|
||||||
|
The recommended way is to add the following to your /etc/rc.d/rc.local
|
||||||
|
script and make sure rc.webmin has executable permissions set:
|
||||||
|
if [ -x /etc/rc.d/rc.webmin ]; then
|
||||||
|
/etc/rc.d/rc.webmin start
|
||||||
|
fi
|
||||||
|
After the webmin service is started, point your web browser to
|
||||||
|
http://localhost:10000 and login as root to use webmin.
|
||||||
|
|
||||||
|
Note that if you upgrade from a older version of this SlackBuild
|
||||||
|
you __MUST__ use the new /etc/rc.d/rc.webmin file.
|
||||||
|
Also, if you are upgrading, you need to backup your /etc/webmin directory.
|
||||||
|
All of the config files will be deleted by this upgrade - however, that
|
||||||
|
problem is solved in future upgrades, so it won't be an issue again.
|
24
system/webmin/doinst.sh
Normal file
24
system/webmin/doinst.sh
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
config() {
|
||||||
|
NEW="$1"
|
||||||
|
OLD="$(dirname $NEW)/$(basename $NEW .new)"
|
||||||
|
# If there's no config file by that name, mv it over:
|
||||||
|
if [ ! -r $OLD ]; then
|
||||||
|
mv $NEW $OLD
|
||||||
|
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
|
||||||
|
# toss the redundant copy
|
||||||
|
rm $NEW
|
||||||
|
fi
|
||||||
|
# Otherwise, we leave the .new copy for the admin to consider...
|
||||||
|
}
|
||||||
|
|
||||||
|
# Keep same perms on rc.webmin.new:
|
||||||
|
if [ -e etc/rc.d/rc.webmin ]; then
|
||||||
|
cp -a etc/rc.d/rc.webmin etc/rc.d/rc.webmin.new.incoming
|
||||||
|
cat etc/rc.d/rc.webmin.new > etc/rc.d/rc.webmin.new.incoming
|
||||||
|
mv etc/rc.d/rc.webmin.new.incoming etc/rc.d/rc.webmin.new
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Signal the startup script to do some post install configuration
|
||||||
|
touch etc/webmin/FIRSTRUN
|
81
system/webmin/rc.webmin
Normal file
81
system/webmin/rc.webmin
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Description: Start or stop the Webmin server
|
||||||
|
|
||||||
|
start=/etc/webmin/start
|
||||||
|
stop=/etc/webmin/stop
|
||||||
|
lockfile=/var/lock/subsys/webmin
|
||||||
|
confFile=/etc/webmin/miniserv.conf
|
||||||
|
pidFile=$(grep "^pidfile=" $confFile | sed -e 's/pidfile=//g')
|
||||||
|
|
||||||
|
pkg_postinst () {
|
||||||
|
echo "Running postinstall scripts .."
|
||||||
|
|
||||||
|
local crypt=$(grep "^root:" /etc/shadow | cut -f 2 -d :)
|
||||||
|
crypt=${crypt//\\/\\\\}
|
||||||
|
crypt=${crypt//\//\\\/}
|
||||||
|
sed -i "s/root:XXX/root:${crypt}/" /etc/webmin/miniserv.users
|
||||||
|
|
||||||
|
if [ -d /usr/libexec/webmin ]; then
|
||||||
|
cd /usr/libexec/webmin
|
||||||
|
WEBMIN_CONFIG=/etc/webmin WEBMIN_VAR=/var/log/webmin /usr/libexec/webmin/run-postinstalls.pl
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "done"
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
'start')
|
||||||
|
if [ -e /etc/webmin/FIRSTRUN ]; then
|
||||||
|
pkg_postinst
|
||||||
|
rm -f /etc/webmin/FIRSTRUN
|
||||||
|
fi
|
||||||
|
$start >/dev/null 2>&1 </dev/null
|
||||||
|
RETVAL=$?
|
||||||
|
if [ "$RETVAL" = "0" ]; then
|
||||||
|
touch $lockfile >/dev/null 2>&1
|
||||||
|
echo "Webmin Started"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
'stop')
|
||||||
|
$stop
|
||||||
|
RETVAL=$?
|
||||||
|
if [ "$RETVAL" = "0" ]; then
|
||||||
|
rm -f $lockfile
|
||||||
|
fi
|
||||||
|
pidfile=`grep "^pidfile=" $confFile | sed -e 's/pidfile=//g'`
|
||||||
|
if [ "$pidfile" = "" ]; then
|
||||||
|
pidfile=$pidFile
|
||||||
|
fi
|
||||||
|
echo "Webmin Stopped"
|
||||||
|
rm -f $pidfile
|
||||||
|
;;
|
||||||
|
'status')
|
||||||
|
pidfile=`grep "^pidfile=" $confFile | sed -e 's/pidfile=//g'`
|
||||||
|
if [ "$pidfile" = "" ]; then
|
||||||
|
pidfile=$pidFile
|
||||||
|
fi
|
||||||
|
if [ -s $pidfile ]; then
|
||||||
|
pid=`cat $pidfile`
|
||||||
|
kill -0 $pid >/dev/null 2>&1
|
||||||
|
if [ "$?" = "0" ]; then
|
||||||
|
echo "Webmin (pid $pid) is running"
|
||||||
|
RETVAL=0
|
||||||
|
else
|
||||||
|
echo "Webmin is stopped"
|
||||||
|
RETVAL=1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Webmin is stopped"
|
||||||
|
RETVAL=1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
'restart')
|
||||||
|
$stop ; $start
|
||||||
|
RETVAL=$?
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Usage: $0 { start | stop | restart }"
|
||||||
|
RETVAL=1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
exit $RETVAL
|
19
system/webmin/slack-desc
Normal file
19
system/webmin/slack-desc
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# HOW TO EDIT THIS FILE:
|
||||||
|
# The "handy ruler" below makes it easier to edit a package description. Line
|
||||||
|
# up the first '|' above the ':' following the base package name, and the '|' on
|
||||||
|
# the right side marks the last column you can put a character in. You must make
|
||||||
|
# exactly 11 lines for the formatting to be correct. It's also customary to
|
||||||
|
# leave one space after the ':'.
|
||||||
|
|
||||||
|
|-----handy-ruler------------------------------------------------------|
|
||||||
|
webmin: webmin (web-based interface for system administration)
|
||||||
|
webmin:
|
||||||
|
webmin: Webmin is a web-based interface for system administration for Unix.
|
||||||
|
webmin: You can initially login in at http://localhost:10000
|
||||||
|
webmin: with user root and root's password.
|
||||||
|
webmin:
|
||||||
|
webmin: Homepage: http://www.webmin.com
|
||||||
|
webmin:
|
||||||
|
webmin:
|
||||||
|
webmin:
|
||||||
|
webmin:
|
137
system/webmin/webmin.SlackBuild
Normal file
137
system/webmin/webmin.SlackBuild
Normal file
|
@ -0,0 +1,137 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Slackware build script for Webmin http://www.webmin.com
|
||||||
|
|
||||||
|
# Copyright 2006-2007 David Somero (dsomero@hotmail.com)
|
||||||
|
# All rights reserved.
|
||||||
|
#
|
||||||
|
# Redistribution and use of this script, with or without modification, is
|
||||||
|
# permitted provided that the following conditions are met:
|
||||||
|
#
|
||||||
|
# 1. Redistributions of this script must retain the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||||
|
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||||
|
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
||||||
|
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||||
|
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||||
|
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||||
|
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||||
|
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
PRGNAM=webmin
|
||||||
|
VERSION=1.400
|
||||||
|
ARCH=noarch
|
||||||
|
BUILD=${BUILD:-1}
|
||||||
|
TAG=${TAG:-_SBo}
|
||||||
|
|
||||||
|
CWD=$(pwd)
|
||||||
|
TMP=${TMP:-/tmp/SBo}
|
||||||
|
PKG=${TMP}/package-${PRGNAM}
|
||||||
|
OUTPUT=${OUTPUT:-/tmp}
|
||||||
|
|
||||||
|
# Check if webmin is running - if so, the build will fail...
|
||||||
|
if [ -e /etc/webmin/miniserv.conf ]; then
|
||||||
|
PIDFILE=$(grep "^pidfile=" /etc/webmin/miniserv.conf | sed -e 's/pidfile=//g')
|
||||||
|
if [ -e $PIDFILE ]; then
|
||||||
|
echo "Webmin is running or a stale pid file exists."
|
||||||
|
echo "Stop webmin and/or remove $PIDFILE"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
rm -rf $PKG
|
||||||
|
mkdir -p $TMP $PKG $OUTPUT
|
||||||
|
cd $TMP
|
||||||
|
rm -rf $PRGNAM-$VERSION
|
||||||
|
tar xvf $CWD/$PRGNAM-$VERSION.tar.*z*
|
||||||
|
cd $PRGNAM-$VERSION
|
||||||
|
chown -R root:root .
|
||||||
|
chmod -R u+w,go+r-w,a-s .
|
||||||
|
|
||||||
|
rm -f mount/{freebsd,openbsd,macos}-mounts*
|
||||||
|
|
||||||
|
( find . -name '*.cgi' ; find . -name '*.pl' ) | perl perlpath.pl /usr/bin/perl -
|
||||||
|
|
||||||
|
install -d -m 0755 $PKG/usr/libexec/webmin
|
||||||
|
install -d -m 0755 $PKG/var
|
||||||
|
install -d -m 0755 $PKG/etc/rc.d/
|
||||||
|
install -d -m 0755 $PKG/etc/webmin/
|
||||||
|
install -d -m 0755 $PKG/var/log/webmin/
|
||||||
|
install -m 0644 $CWD/rc.webmin $PKG/etc/rc.d/rc.webmin
|
||||||
|
cp -rp * $PKG/usr/libexec/webmin
|
||||||
|
echo "slackware" > $PKG/usr/libexec/webmin/install-type
|
||||||
|
echo "/usr/libexec/webmin" > $PKG/usr/libexec/webmin/install-dir
|
||||||
|
|
||||||
|
config_dir=$PKG/etc/webmin
|
||||||
|
var_dir=$PKG/var/log/webmin
|
||||||
|
perl=/usr/bin/perl
|
||||||
|
autoos=1
|
||||||
|
port=10000
|
||||||
|
login=root
|
||||||
|
crypt="XXX"
|
||||||
|
host=$(hostname)
|
||||||
|
ssl=0
|
||||||
|
atboot=0
|
||||||
|
nostart=1
|
||||||
|
nochown=1
|
||||||
|
autothird=1
|
||||||
|
nouninstall=1
|
||||||
|
noperlpath=1
|
||||||
|
nopostinstall=1
|
||||||
|
|
||||||
|
export config_dir var_dir perl autoos port login crypt host ssl atboot nostart nochown autothird nouninstall noperlpath nopostinstall
|
||||||
|
|
||||||
|
cd $PKG/usr/libexec/webmin
|
||||||
|
./setup.sh 2>&1
|
||||||
|
cd -
|
||||||
|
|
||||||
|
# Fixup the package files to use their real locations
|
||||||
|
sed -i -e 's:^pidfile=.*$:pidfile=/var/run/webmin.pid:' $PKG/etc/webmin/miniserv.conf
|
||||||
|
find $PKG -type f | xargs sed -i -e "s:$PKG::g"
|
||||||
|
|
||||||
|
# Remove some stuff we don't need
|
||||||
|
rm -rf $PKG/usr/libexec/webmin/acl/Authen-SolarisRBAC-0.1
|
||||||
|
rm -f $PKG/usr/libexec/webmin/acl/Authen-SolarisRBAC-0.1.tar.gz
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||||
|
cp -a LICENCE* README ${CWD}/webmin.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION
|
||||||
|
chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION
|
||||||
|
chmod 644 $PKG/usr/doc/$PRGNAM-$VERSION/*
|
||||||
|
|
||||||
|
mkdir -p $PKG/install
|
||||||
|
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||||
|
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
||||||
|
|
||||||
|
# Find config files and add the .new.
|
||||||
|
# Used by the next block of code.
|
||||||
|
get_config_files() {
|
||||||
|
for i in $(ls -1 $1); do
|
||||||
|
if [ -d "$1/$i" ]; then
|
||||||
|
get_config_files "$1/$i"
|
||||||
|
else
|
||||||
|
echo -n "$1/$i.new " | sed -e "s/^$(echo $PKG | sed -e 's/\//\\\//g')\///g"
|
||||||
|
mv "$1/$i" "$1/$i.new"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
# Finish the doinst.sh by adding the .new file list and config loop
|
||||||
|
if [ -e $PKG/etc ]; then
|
||||||
|
etc_files=$(get_config_files $PKG/etc)
|
||||||
|
|
||||||
|
cat <<DOINST >> $PKG/install/doinst.sh
|
||||||
|
for FILE in $etc_files
|
||||||
|
do
|
||||||
|
config \$FILE
|
||||||
|
done
|
||||||
|
DOINST
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $PKG
|
||||||
|
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
|
8
system/webmin/webmin.info
Normal file
8
system/webmin/webmin.info
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
PRGNAM="webmin"
|
||||||
|
VERSION="1.400"
|
||||||
|
HOMEPAGE="http://www.webmin.com/"
|
||||||
|
DOWNLOAD="http://downloads.sourceforge.net/webadmin/webmin-1.400.tar.gz"
|
||||||
|
MD5SUM="c52399bc70f0277d69fb128930e09fd0"
|
||||||
|
MAINTAINER="David Somero"
|
||||||
|
EMAIL="dsomero@hotmail.com"
|
||||||
|
APPROVED="rworkman"
|
Loading…
Reference in a new issue