[App_rpt-users] AllStarLink apt-get install
Steve Zingman
szingman at msgstor.com
Mon Nov 13 17:07:56 UTC 2017
Since the introduction of DIAL, we have had a number of requests for a
better method of installing and upgrading AllStarLink. The D in DIAL
stands for Debian. The Intel/AMD versions of DIAL are built on a
slightly modified version of the NetInstaller from Debian.
The Raspberry Pi version of DIAL is built on a modified version of
Raspbian which is a modified version of Debian. The Intel/AMD installer
builds ASL from the GitHub repository. The Raspbian image uses
pre-compiled ASL programs and scripts. A number of people have also
wanted to build ASL on their own install install of Debian or a
derivative. I have tried to provide install scripts to accommodate this
also. None of these are "easy" to upgrade and maintain.
One of the biggest stumbling blocks to installing ASL is the
requirement for DAHDI. DAHDI is a set of kernel modules that HAS to be
built for the running kernel. Every time a user upgraded the kernel, the
user had to rebuild DAHDI. To say that is a pain is a understatement. A
few months ago I started using a system call Dynamic Kernel Module
Support (DKMS). One of the features of DKMS is the ability to install
the needed support programs and source to build the needed kernel
modules. In simple terms Debian calls on DKMS to rebuild DAHDI. The big
advantage to this is when the kernel is upgraded, DKMS tries to rebuild
DAHDI. DHADI does not change very often, but it does require some
maintenance. DKMS has helped to allow users to upgrade their host OS and
continue to run ASL.
The other parts of ASL are or should be more fluid. They should be
changing as new bugs are found and new features are added. Under the
current system, this sometimes requires downloading and building
asterisk from the GitHub repository. Not really that hard to do, but it
is time consuming and error prone. I don't expect users to be Linux
software experts, though some basic understanding of the OS they use to
run their repeaters and remote bases would be nice. Due to this
complexity, I have held off putting out a update to DIAL. There have
been some changes in the installers and some minor tweaks, but nothing
of consequence. This will now start to change. Over the year since we
have put the ASL source on GitHub, people have contributed changes.
These changes have been or will be staged and tested. At some point they
will be ready to be included in ASL. We need a mechanism to easily put
these changes to use. I do not want to require a user to have to
download an new image just to get fixes, upgrades and enhancements. It
can be done, but should be limited and rare.
I have taken the GitHub main branch(s) and built a Debian repository.
What this means is the method to install ASL or upgrade ASL will change.
Though the ARM and Intel/AMD images will be available, they will be
built using the repository rather then static programs. This also open
up the possibility of support for other Debian based distribution. For
ARM this means support for Armbian <https://www.armbian.com> Armbian is
a very well done distribution supporting a number of ARM based single
board computers. Many more boards to choose from! The next release of
the images will use the repository. This will take some time. In the
long run for images I will follow Debian. With each new revision of
Debian I will release a new image. As of today, we are built on Debian
8. The next install image will be built on Debian 9 (Stretch) As we
progress, the repository will also contain programs to enhance ASL.
Rather then searching for and having how to figure out how to install
the program it will become as simple as apt-get install Analog_Bridge. I
will work with the developers to include their programs in the repository.
OK, so 4 paragraphs to get to the good stuff. How do I use the
repositories? How do I upgrade my OS and ASL? Why is the sky blue? (Just
waned to make sure you were still awake) For the adventurous among us
here we go. In Debian it is quite easy to add a repository. I have built
a simple script to add the repository for you. You will start with a off
the shelf image, in this example from Raspbian. Intel/AMD users should
get the idea. Remember this is a test. Most things will stay the same,
some will change as issues are found. You can use either Jessie or
Stretch image as a starting point. A couple of warnings are in order.
These are stock images. There is NO protection from someone hacking into
your machine if you expose it before at least changing to default
password. A stock Raspbian image will not even allow you to use SSH to
login the machine without 1 change. You must add a file to /boot. The
file can be empty but must be named "ssh" I have take a stock Raspbian
Jessie image and added the file. That is the ONLY change I have made to
the image. It is available for download from
<http://dvswitch.org/files/AllStarLink/2017-06-21-raspbian-jessie-lite.tar.gz>
Extract the image and burn it to a SD card. The login is pi and the
password is raspberry.
DO NOT DO THIS ON TOP OF YOUR EXISTING DIAL INSTALL !!!!!!!!!!!!!!!!!!!!!!!!
You will need to do a few things to you fresh image to prepare for ASL
install.
sudo -s so you are root
Use raspi-config to change the login password
Use the advanced menu from raspi-config to expand the file system to use
your whole SD card. On exit from raspi-config you will be asked to reboot
After the reboot, log back in and become root.
If you are installing on a fresh Intel/AMD or some other Debian
derivative, start here.
apt-get update
apt-get upgrade -y
At this point this is nothing but a ready to run Raspbian Jessie machine.
cd /tmp
wget
https://github.com/AllStarLink/DIAL/raw/master/repository/install-repository
chmod +x install-repository
./install-repository
The ONLY thing the script does is add the new AllStarLink repository.
To install ASL:
apt-get install allstarlink
When the install completes (yes it does take a while since DAHDI still
has to be compiled) reboot.
You should have a fresh install of ASL ready for you to edit the config
files.
Over the next few weeks, my time will be somewhat limited. When I have a
update ready I'll post on the list. You will then be able to run apt-get
upgrade and the changes will be applied to your test machine. Upgrade
will NOT overwrite your config files.
If you want to test this on a fresh install of Intel/AMD or the Raspbian
Stretch, go for it. I have done some quick tests on Raspbian Stretch and
it does work. Needs at least one bug fix and a LOT more testing.
Last but not least is the support programs that are used to help you
configure the node and OS. The existing scripts are a MESS. I have a
completely new set of programs I'll be working on and roll out in time.
For now, edit the config file and ask questions.
--
"The nice thing about DIY is that if you break it, you get to keep both pieces"
More information about the App_rpt-users
mailing list