new devuan package for experimental
This commit is contained in:
parent
3b73cc1063
commit
caab1f7d30
|
@ -0,0 +1,132 @@
|
|||
+--------------+
|
||||
| setnet |
|
||||
+--------------+
|
||||
|
||||
Copyleft (C) Vincenzo "KatolaZ" Nicosia <katolaz@freaknet.org>
|
||||
2016, 2017
|
||||
|
||||
=== DESCRIPTION ===
|
||||
|
||||
setnet is a shell script with a dialog UI to configure ethernet and
|
||||
wifi connections. It is meant to be POSIX-compliant, and has been
|
||||
tested with bash, busybox, dash, ksh, mksh, posh, and yash. It is
|
||||
still to be considered beta software, so you should use it AT YOUR OWN
|
||||
RISK, but it is already fully functional.
|
||||
|
||||
=== LICENSE ===
|
||||
|
||||
setnet is Free Software, and can be used and distributed under the
|
||||
terms of the GNU General Public License, either version 3 of the
|
||||
licence or, at your option, any later version.
|
||||
|
||||
Please see the file LICENSE for more information
|
||||
|
||||
=== DEPENDENCIES ===
|
||||
|
||||
In order to run setset, you MUST satisfy this (relatively small) set
|
||||
of dependencies:
|
||||
|
||||
- a posix-compliant shell (bash, busybox, dash, ksh, mksh, posh, and
|
||||
yash have been tested)
|
||||
|
||||
- dialog (version 1.2 tested, but it should work with previous
|
||||
versions as well)
|
||||
|
||||
- dhcp-client (for dhclient, tested with isc-dhcp-client)
|
||||
|
||||
- iproute2 (for ip)
|
||||
|
||||
- wireless-tools (for iwconfig, currently required for interface
|
||||
identification)
|
||||
|
||||
Most of those tools might already be installed in your system anyway.
|
||||
In particular, setnet uses:
|
||||
|
||||
- dialog: to provide a minimal Text-based User Interface,
|
||||
- ip: to configure network interfaces and get information about them,
|
||||
- dhclient: for DHCP-based IP configuration
|
||||
- iwconfig: to check whether a network device is a wifi adapter
|
||||
|
||||
In order to use the full set of functionalities provided by setnet,
|
||||
you MIGHT also need the following packages:
|
||||
|
||||
- wpa_supplicant (for wifi configuration)
|
||||
|
||||
- net-tools (for netstat, to gather information about network status)
|
||||
|
||||
- iputils-ping (for ping)
|
||||
|
||||
- bind9-nost (for host, used to check DNS configuration)
|
||||
|
||||
- traceroute (to trace the route between your host and any other host
|
||||
in the Internet)
|
||||
|
||||
Again, most of them should be already installed in your system anyway.
|
||||
|
||||
=== USAGE ===
|
||||
|
||||
setnet is installed under /usr/sbin/setnet.sh. If invoked with "-h",
|
||||
it provides a list of supported options:
|
||||
|
||||
$ ./setnet.sh -h
|
||||
Usage: setnet.sh [OPTION]
|
||||
Options:
|
||||
-c cfg_file Load configuration from cfg_file.
|
||||
-v Print version number and exit.
|
||||
-h Show this help.
|
||||
$
|
||||
|
||||
If the argument "-c" is specified, setnet will use the provided
|
||||
configuration file. Otherwise, it will look for its configuration file
|
||||
in one of the following locations:
|
||||
|
||||
- /etc/setnetrc
|
||||
- ~/.setnetrc
|
||||
|
||||
in the given order. The following configuration variables should be
|
||||
defined in setnetrc:
|
||||
|
||||
|
||||
- WPA_FILE
|
||||
This is the file configuration file used by wpa_supplicant.
|
||||
|
||||
- LOGNAME
|
||||
This is the file used for logging.
|
||||
|
||||
- TRUNCATE_LOG
|
||||
if equal to "yes", the log file will be truncated when setnet
|
||||
starts
|
||||
|
||||
|
||||
=== root vs. mortal users ===
|
||||
|
||||
Networking is an amdinistration task, and as such should be performed
|
||||
by the host administrator, i.e., the user with UID 0 (normally called
|
||||
"root"). However, in many modern GNU/Linux systems it is customary to
|
||||
allow normal users to perform some administration tasks. There are at
|
||||
least two concrete possibilities to allow a particular user (in the
|
||||
following we call such user "fool") to configure network interfaces
|
||||
using setnet.
|
||||
|
||||
|
||||
-- 1) First approach: using sudo
|
||||
|
||||
If sudo is installed in your system, it is sufficient to add the
|
||||
following line:
|
||||
|
||||
fool ALL=NOPASSWD: /usr/sbin/setnet.sh
|
||||
|
||||
to the file /etc/sudoers, and the user "fool" will be able to run
|
||||
setnet.sh with effective UID 0 (i.e., as if it was root), by using the
|
||||
command:
|
||||
|
||||
[fool@host]$ sudo /usr/sbin/setnet.sh
|
||||
|
||||
and thus will be able to perform all the needed admin tasks to
|
||||
configure networking.
|
||||
|
||||
-- 2) Second approach: using sup
|
||||
|
||||
......TO BE DOCUMENTED......
|
||||
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
setnet for Debian
|
||||
-----------------
|
||||
|
||||
<this file describes information about the source package, see Debian policy
|
||||
manual section 4.14. You WILL either need to modify or delete this file>
|
||||
|
||||
|
||||
|
||||
-- Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org> Sat, 29 Apr 2017 11:13:55 +0100
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
setnet (0.3.2-1) unstable; urgency=medium
|
||||
|
||||
* Version 0.3.2 -- See ChangeLog for details
|
||||
|
||||
-- Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org> Wed, 08 Mar 2017 11:45:45 +0000
|
||||
|
||||
setnet (0.3.1-1) unstable; urgency=medium
|
||||
|
||||
* Version 0.3.1 -- See ChangeLog for details
|
||||
|
||||
-- Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org> Tue, 07 Mar 2017 11:29:07 +0000
|
||||
|
||||
setnet (0.3-1) unstable; urgency=medium
|
||||
|
||||
* Version 0.3 -- See ChangeLog for details
|
||||
|
||||
-- Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org> Sun, 29 Jan 2017 15:43:35 +0000
|
||||
|
||||
setnet (0.2.1-1) unstable; urgency=medium
|
||||
|
||||
|
||||
* Version 0.2.1 -- See ChangeLog for details
|
||||
|
||||
-- Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org> Sat, 07 Jan 2017 23:29:44 +0000
|
||||
|
||||
setnet (0.2-1) unstable; urgency=medium
|
||||
|
||||
* Initial release (20170104)
|
||||
|
||||
== Major Changes ==
|
||||
|
||||
+ Polished code to make it posix-shell compliant
|
||||
|
||||
+ Tested with bash, busybox, dash, ksh, mksh, posh, yash
|
||||
|
||||
+ Added support and checks for hard, soft, and optional
|
||||
dependencies
|
||||
|
||||
+ Added standard command line options (-c, -h, -v)
|
||||
|
||||
+ Added submenu "Info" with basic network testing tools
|
||||
|
||||
+ Added submenu "Dump" to dump network information to a file
|
||||
|
||||
+ Added submenu "Log" (shows setnet logfile)
|
||||
|
||||
+ Added status information in device configuration panel
|
||||
|
||||
+ Added minimal README.Debian file
|
||||
|
||||
|
||||
-- Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org> Wed, 04 Jan 2017 18:52:56 +0000
|
|
@ -0,0 +1 @@
|
|||
9
|
|
@ -0,0 +1,19 @@
|
|||
Source: setnet
|
||||
Section: unknown
|
||||
Priority: optional
|
||||
Maintainer: Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org>
|
||||
Build-Depends: debhelper (>=9)
|
||||
Standards-Version: 3.9.8
|
||||
Homepage: http://kalos.mine.nu/setnet
|
||||
#Vcs-Git: git://anonscm.debian.org/collab-maint/setnet.git
|
||||
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/setnet.git
|
||||
|
||||
Package: setnet
|
||||
Architecture: all
|
||||
Depends: bash | busybox | dash | ksh | mksh | posh | yash | zsh, dhcp-client, dialog, iproute2, iw
|
||||
Suggests: wpasupplicant, pastebinit, net-tools, iputils-ping, bind9-host, traceroute
|
||||
Description: simple shell/dialog tool to configure networks
|
||||
setnet is a shell script with a dialog UI to configure ethernet
|
||||
and wifi connections. It is meant to be POSIX-compliant, and has
|
||||
been tested on bash, busybox, dash, ksh, mksh, posh, yash, and zsh.
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Name: setnet
|
||||
Source: <url://example.com>
|
||||
|
||||
Files: *
|
||||
Copyright: <years> <put author's name and email here>
|
||||
<years> <likewise for another author>
|
||||
License: <special license>
|
||||
<Put the license of the package here indented by 1 space>
|
||||
<This follows the format of Description: lines in control file>
|
||||
.
|
||||
<Including paragraphs>
|
||||
|
||||
# If you want to use GPL v2 or later for the /debian/* files use
|
||||
# the following clauses, or change it to suit. Delete these two lines
|
||||
Files: debian/*
|
||||
Copyright: 2017 Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org>
|
||||
License: GPL-2+
|
||||
This package is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
.
|
||||
This package is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
.
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
|
||||
|
||||
# Please also look if there are files or directories which have a
|
||||
# different copyright/license attached and list them here.
|
||||
# Please avoid to pick license terms that are more restrictive than the
|
||||
# packaged work, as it may make Debian's contributions unacceptable upstream.
|
|
@ -0,0 +1,3 @@
|
|||
notes.txt
|
||||
README.md
|
||||
TODO.org
|
|
@ -0,0 +1,166 @@
|
|||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: setnet
|
||||
# Required-Start: $local_fs $network $remote_fs $syslog
|
||||
# Required-Stop: $local_fs $network $remote_fs $syslog
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: <Enter a short description of the software>
|
||||
# Description: <Enter a long description of the software>
|
||||
# <...>
|
||||
# <...>
|
||||
### END INIT INFO
|
||||
|
||||
# Author: Vincenzo (KatolaZ) Nicosia <katolaz@freaknet.org>
|
||||
|
||||
# Do NOT "set -e"
|
||||
|
||||
# PATH should only include /usr/* if it runs after the mountnfs.sh script
|
||||
PATH=/sbin:/usr/sbin:/bin:/usr/bin
|
||||
DESC="setnet"
|
||||
NAME=setnet
|
||||
DAEMON=/usr/sbin/setnet
|
||||
DAEMON_ARGS=""
|
||||
PIDFILE=/var/run/$NAME.pid
|
||||
SCRIPTNAME=/etc/init.d/$NAME
|
||||
|
||||
# Exit if the package is not installed
|
||||
[ -x "$DAEMON" ] || exit 0
|
||||
|
||||
# Read configuration variable file if it is present
|
||||
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
|
||||
|
||||
# Load the VERBOSE setting and other rcS variables
|
||||
. /lib/init/vars.sh
|
||||
|
||||
# Define LSB log_* functions.
|
||||
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
|
||||
# and status_of_proc is working.
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
#
|
||||
# Function that starts the daemon/service
|
||||
#
|
||||
do_start()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been started
|
||||
# 1 if daemon was already running
|
||||
# 2 if daemon could not be started
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
|
||||
|| return 1
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
|
||||
$DAEMON_ARGS \
|
||||
|| return 2
|
||||
# The above code will not work for interpreted scripts, use the next
|
||||
# six lines below instead (Ref: #643337, start-stop-daemon(8) )
|
||||
#start-stop-daemon --start --quiet --pidfile $PIDFILE --startas $DAEMON \
|
||||
# --name $NAME --test > /dev/null \
|
||||
# || return 1
|
||||
#start-stop-daemon --start --quiet --pidfile $PIDFILE --startas $DAEMON \
|
||||
# --name $NAME -- $DAEMON_ARGS \
|
||||
# || return 2
|
||||
|
||||
# Add code here, if necessary, that waits for the process to be ready
|
||||
# to handle requests from services started subsequently which depend
|
||||
# on this one. As a last resort, sleep for some time.
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
do_stop()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been stopped
|
||||
# 1 if daemon was already stopped
|
||||
# 2 if daemon could not be stopped
|
||||
# other if a failure occurred
|
||||
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
|
||||
RETVAL="$?"
|
||||
[ "$RETVAL" = 2 ] && return 2
|
||||
# Wait for children to finish too if this is a daemon that forks
|
||||
# and if the daemon is only ever run from this initscript.
|
||||
# If the above conditions are not satisfied then add some other code
|
||||
# that waits for the process to drop all resources that could be
|
||||
# needed by services started subsequently. A last resort is to
|
||||
# sleep for some time.
|
||||
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
|
||||
[ "$?" = 2 ] && return 2
|
||||
# Many daemons don't delete their pidfiles when they exit.
|
||||
rm -f $PIDFILE
|
||||
return "$RETVAL"
|
||||
}
|
||||
|
||||
#
|
||||
# Function that sends a SIGHUP to the daemon/service
|
||||
#
|
||||
do_reload() {
|
||||
#
|
||||
# If the daemon can reload its configuration without
|
||||
# restarting (for example, when it is sent a SIGHUP),
|
||||
# then implement that here.
|
||||
#
|
||||
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
|
||||
return 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
|
||||
do_start
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
stop)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
status)
|
||||
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
||||
;;
|
||||
#reload|force-reload)
|
||||
#
|
||||
# If do_reload() is not implemented then leave this commented out
|
||||
# and leave 'force-reload' as an alias for 'restart'.
|
||||
#
|
||||
#log_daemon_msg "Reloading $DESC" "$NAME"
|
||||
#do_reload
|
||||
#log_end_msg $?
|
||||
#;;
|
||||
restart|force-reload)
|
||||
#
|
||||
# If the "reload" option is implemented then remove the
|
||||
# 'force-reload' alias
|
||||
#
|
||||
log_daemon_msg "Restarting $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1)
|
||||
do_start
|
||||
case "$?" in
|
||||
0) log_end_msg 0 ;;
|
||||
1) log_end_msg 1 ;; # Old process is still running
|
||||
*) log_end_msg 1 ;; # Failed to start
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
# Failed to stop
|
||||
log_end_msg 1
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
|
||||
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
|
||||
:
|
|
@ -0,0 +1,5 @@
|
|||
setnet.sh /usr/sbin
|
||||
setnetrc /etc/
|
||||
wpa_setnet.conf /etc/wpa_supplicant/
|
||||
setnet.8.gz /usr/share/man/man8/
|
||||
ChangeLog /usr/share/doc/setnet/
|
|
@ -0,0 +1,32 @@
|
|||
#!/usr/bin/make -f
|
||||
# See debhelper(7) (uncomment to enable)
|
||||
# output every command that modifies files on the build system.
|
||||
#DH_VERBOSE = 1
|
||||
|
||||
# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
|
||||
DPKG_EXPORT_BUILDFLAGS = 1
|
||||
include /usr/share/dpkg/default.mk
|
||||
|
||||
# see FEATURE AREAS in dpkg-buildflags(1)
|
||||
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
|
||||
|
||||
# see ENVIRONMENT in dpkg-buildflags(1)
|
||||
# package maintainers to append CFLAGS
|
||||
#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
|
||||
# package maintainers to append LDFLAGS
|
||||
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
|
||||
|
||||
|
||||
# main packaging script based on dh7 syntax
|
||||
%:
|
||||
dh $@
|
||||
|
||||
# debmake generated override targets
|
||||
# This is example for Cmake (See http://bugs.debian.org/641051 )
|
||||
#override_dh_auto_configure:
|
||||
# dh_auto_configure -- \
|
||||
# -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1 @@
|
|||
3.0 (quilt)
|
|
@ -0,0 +1,23 @@
|
|||
# Example watch control file for uscan
|
||||
# Rename this file to "watch" and then you can run the "uscan" command
|
||||
# to check for upstream updates and more.
|
||||
# See uscan(1) for format
|
||||
|
||||
# Compulsory line, this is a version 3 file
|
||||
version=3
|
||||
|
||||
# Uncomment to examine a Webpage
|
||||
# <Webpage URL> <string match>
|
||||
#http://www.example.com/downloads.php setnet-(.*)\.tar\.gz
|
||||
|
||||
# Uncomment to examine a Webserver directory
|
||||
#http://www.example.com/pub/setnet-(.*)\.tar\.gz
|
||||
|
||||
# Uncommment to examine a FTP server
|
||||
#ftp://ftp.example.com/pub/setnet-(.*)\.tar\.gz debian uupdate
|
||||
|
||||
# Uncomment to find new files on sourceforge, for devscripts >= 2.9
|
||||
# http://sf.net/setnet/setnet-(.*)\.tar\.gz
|
||||
|
||||
# Uncomment to find new files on GooglePages
|
||||
# http://example.googlepages.com/foo.html setnet-(.*)\.tar\.gz
|
Loading…
Reference in New Issue