This commit is contained in:
Bob Mottram 2018-02-18 20:10:06 +00:00
commit 0c025e21c2
11 changed files with 43 additions and 104 deletions

View File

@ -16,7 +16,7 @@
#+end_export #+end_export
#+begin_quote #+begin_quote
"/we are the music makers, we are the dreamers of dreams. cyberpunks and pirates. chaotic spectres hauting cyberspace. engineers, artists, hackers./" "/we are the music makers, we are the dreamers of dreams. cyberpunks and pirates. chaotic spectres haunting cyberspace. engineers, artists, hackers./"
#+end_quote #+end_quote
If you have a single board ARM computer which isn't one of the supported ones then you can probably still install Freedombone onto it if it has a [[https://www.armbian.com/download/][Debian Stretch Armbian image]] available for it. If you have a single board ARM computer which isn't one of the supported ones then you can probably still install Freedombone onto it if it has a [[https://www.armbian.com/download/][Debian Stretch Armbian image]] available for it.

View File

@ -16,6 +16,12 @@
</center> </center>
#+END_EXPORT #+END_EXPORT
#+BEGIN_QUOTE
"/The antagonism of surveillance is not privacy but the making of communities in struggle/"
-- Arun Kundnani
#+END_QUOTE
Although the image builder supports a variety of architectures there may still be some which aren't supported. These especially include systems which have a proprietary boot blob, such as the Raspberry Pi boards. Although the image builder supports a variety of architectures there may still be some which aren't supported. These especially include systems which have a proprietary boot blob, such as the Raspberry Pi boards.
It's still possible to install the system onto these unsupported devices if you need to. First you'll need to ensure that you have *Debian Stretch* installed and can get ssh access to the system. Then either via ssh, or directly on the target device in the case of an old laptop or netbook: It's still possible to install the system onto these unsupported devices if you need to. First you'll need to ensure that you have *Debian Stretch* installed and can get ssh access to the system. Then either via ssh, or directly on the target device in the case of an old laptop or netbook:

View File

@ -37,11 +37,10 @@ HUBZILLA_DOMAIN_NAME=
HUBZILLA_CODE= HUBZILLA_CODE=
HUBZILLA_ONION_PORT=8085 HUBZILLA_ONION_PORT=8085
HUBZILLA_REPO="https://github.com/redmatrix/hubzilla.git" HUBZILLA_REPO="https://github.com/redmatrix/hubzilla.git"
HUBZILLA_THEMES_REPO="https://github.com/DeadSuperHero/redmatrix-themes" HUBZILLA_COMMIT='577da0eb9eb1f90a4cf7a70cfb3582cfb49007ac'
HUBZILLA_ADDONS_REPO="https://github.com/redmatrix/hubzilla-addons.git" HUBZILLA_ADDONS_REPO="https://github.com/redmatrix/hubzilla-addons.git"
HUBZILLA_ADDONS_COMMIT='be9dcd044b9326c3bd9301d7c4b375a2c2f54663'
HUBZILLA_ADMIN_PASSWORD= HUBZILLA_ADMIN_PASSWORD=
HUBZILLA_COMMIT='bc2b948f1f6e62b1c277a4042200bb6678956f3f'
HUBZILLA_ADDONS_COMMIT='f08ef6b93e9580bf241ad60c09f4e5162d04475f'
hubzilla_variables=(ONION_ONLY hubzilla_variables=(ONION_ONLY
HUBZILLA_DOMAIN_NAME HUBZILLA_DOMAIN_NAME
@ -127,12 +126,12 @@ function hubzilla_channel_directory_server {
fi fi
if [[ $hubzilla_domain_server != "https"* ]]; then if [[ $hubzilla_domain_server != "https"* ]]; then
dialog --title $"Hubzilla channel directory server" \ dialog --title $"Hubzilla channel directory server" \
--msgbox $"Invalid domain - include the https://" 6 40 --msgbox $"\nInvalid domain - include the https://" 7 60
return return
fi fi
./var/www/$HUBZILLA_DOMAIN_NAME/htdocs/util/config system directory_server $hubzilla_domain_server ./var/www/$HUBZILLA_DOMAIN_NAME/htdocs/util/config system directory_server $hubzilla_domain_server
dialog --title $"Hubzilla channel directory server" \ dialog --title $"Hubzilla channel directory server" \
--msgbox $"Domain channel directory server changed to $hubzilla_domain_server" 6 40 --msgbox $"\nDomain channel directory server changed to\n\n $hubzilla_domain_server" 10 60
;; ;;
esac esac
} }
@ -336,6 +335,10 @@ function install_hubzilla {
function_check install_mariadb function_check install_mariadb
install_mariadb install_mariadb
if [ -d /var/www/$HUBZILLA_DOMAIN_NAME ]; then
remove_hubzilla
fi
function_check get_mariadb_password function_check get_mariadb_password
get_mariadb_password get_mariadb_password
@ -350,28 +353,23 @@ function install_hubzilla {
mkdir /var/www/$HUBZILLA_DOMAIN_NAME mkdir /var/www/$HUBZILLA_DOMAIN_NAME
fi fi
if [ ! -d $HUBZILLA_PATH ]; then if [ ! -d $HUBZILLA_PATH ]; then
mkdir $HUBZILLA_PATH mkdir -p $HUBZILLA_PATH
fi fi
if [ ! -f $HUBZILLA_PATH/index.php ]; then if [ ! -f $HUBZILLA_PATH/index.php ]; then
cd $INSTALL_DIR
if [ -d /repos/hubzilla ]; then if [ -d /repos/hubzilla ]; then
mkdir hubzilla mkdir $HUBZILLA_PATH
cp -r -p /repos/hubzilla/. hubzilla cp -r -p /repos/hubzilla/. $HUBZILLA_PATH
cd hubzilla cd $HUBZILLA_PATH
git pull git pull
else else
function_check git_clone function_check git_clone
git_clone $HUBZILLA_REPO hubzilla git_clone $HUBZILLA_REPO $HUBZILLA_PATH
fi fi
git checkout $HUBZILLA_COMMIT -b $HUBZILLA_COMMIT git checkout $HUBZILLA_COMMIT -b $HUBZILLA_COMMIT
set_completion_param "hubzilla commit" "$HUBZILLA_COMMIT" set_completion_param "hubzilla commit" "$HUBZILLA_COMMIT"
rm -rf $HUBZILLA_PATH
mv hubzilla $HUBZILLA_PATH
if [ -d /repos/hubzilla-addons ]; then if [ -d /repos/hubzilla-addons ]; then
mkdir $HUBZILLA_PATH/addon mkdir $HUBZILLA_PATH/addon
cp -r -p /repos/hubzilla-addons/. $HUBZILLA_PATH/addon cp -r -p /repos/hubzilla-addons/. $HUBZILLA_PATH/addon
@ -385,13 +383,14 @@ function install_hubzilla {
git checkout $HUBZILLA_ADDONS_COMMIT -b $HUBZILLA_ADDONS_COMMIT git checkout $HUBZILLA_ADDONS_COMMIT -b $HUBZILLA_ADDONS_COMMIT
set_completion_param "hubzilla addons commit" "$HUBZILLA_ADDONS_COMMIT" set_completion_param "hubzilla addons commit" "$HUBZILLA_ADDONS_COMMIT"
# some extra themes
#git_clone $HUBZILLA_THEMES_REPO $HUBZILLA_PATH/redmatrix-themes1
#cp -r $HUBZILLA_PATH/redmatrix-themes1/* $HUBZILLA_PATH/view/theme/
chown -R www-data:www-data $HUBZILLA_PATH chown -R www-data:www-data $HUBZILLA_PATH
fi fi
if [ ! -f $HUBZILLA_PATH/install/schema_mysql.sql ]; then
echo $'No database schema found for hubzilla'
exit 252782
fi
HUBZILLA_ONION_HOSTNAME= HUBZILLA_ONION_HOSTNAME=
if [[ $ONION_ONLY != "no" ]]; then if [[ $ONION_ONLY != "no" ]]; then
HUBZILLA_ONION_HOSTNAME=$(add_onion_service hubzilla 80 ${HUBZILLA_ONION_PORT}) HUBZILLA_ONION_HOSTNAME=$(add_onion_service hubzilla 80 ${HUBZILLA_ONION_PORT})
@ -464,7 +463,6 @@ function install_hubzilla {
echo ' # With php-fpm:' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' # With php-fpm:' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' include fastcgi_params;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' include fastcgi_params;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_read_timeout 30;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_index index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_index index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_read_timeout 300;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_read_timeout 300;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
@ -531,7 +529,6 @@ function install_hubzilla {
echo ' # With php-fpm:' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' # With php-fpm:' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' include fastcgi_params;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' include fastcgi_params;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_read_timeout 30;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_index index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_index index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
echo ' fastcgi_read_timeout 300;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME echo ' fastcgi_read_timeout 300;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
@ -584,11 +581,6 @@ function install_hubzilla {
function_check nginx_ensite function_check nginx_ensite
nginx_ensite $HUBZILLA_DOMAIN_NAME nginx_ensite $HUBZILLA_DOMAIN_NAME
# initialize the database
if [ ! -f $HUBZILLA_PATH/install/schema_mysql.sql ]; then
echo $'No database schema found for hubzilla'
exit 252782
fi
function_check initialise_database function_check initialise_database
initialise_database hubzilla $HUBZILLA_PATH/install/schema_mysql.sql initialise_database hubzilla $HUBZILLA_PATH/install/schema_mysql.sql

View File

@ -556,17 +556,6 @@ if [[ $VARIANT == 'usb' ]]; then
IMAGE_NAME=$'usb' IMAGE_NAME=$'usb'
fi fi
if [[ $VARIANT == 'beaglebonewifi' ]]; then
if [ ! $WIFI_SSID ]; then
WIFI_SSID=${PROJECT_NAME}
fi
if [ ! "$WIFI_PASSPHRASE" ]; then
WIFI_PASSPHRASE=${PROJECT_NAME}
fi
WIFI_TYPE='wpa2-psk'
WIFI_HOTSPOT='yes'
fi
# append amnesic to the image name if needed # append amnesic to the image name if needed
if [[ $AMNESIC != 'no' ]]; then if [[ $AMNESIC != 'no' ]]; then
IMAGE_NAME="${IMAGE_NAME}-amnesic" IMAGE_NAME="${IMAGE_NAME}-amnesic"

View File

@ -195,22 +195,6 @@ EOF
configure_networking() { configure_networking() {
chroot "$rootdir" apt-get -yq install resolvconf chroot "$rootdir" apt-get -yq install resolvconf
if [[ "$MACHINE" == "beaglebonewifi" ]]; then
# Allow networking over USB in order to configure the
# wifi login settings
echo '# This file describes the network interfaces available on your system' > $rootdir/etc/network/interfaces
echo '# and how to activate them. For more information, see interfaces(5).' >> $rootdir/etc/network/interfaces
echo 'source /etc/network/interfaces.d/*' >> $rootdir/etc/network/interfaces
echo 'iface usb0 inet static' >> $rootdir/etc/network/interfaces.d/usb
echo ' address 192.168.7.2' >> $rootdir/etc/network/interfaces.d/usb
echo ' netmask 255.255.255.252' >> $rootdir/etc/network/interfaces.d/usb
echo ' network 192.168.7.0' >> $rootdir/etc/network/interfaces.d/usb
echo ' gateway 192.168.7.1' >> $rootdir/etc/network/interfaces.d/usb
return
fi
if [[ $DEBIAN_INSTALL_ONLY != "no" ]]; then if [[ $DEBIAN_INSTALL_ONLY != "no" ]]; then
return return
fi fi
@ -492,10 +476,6 @@ continue_installation() {
} }
atheros_wifi() { atheros_wifi() {
if [[ "$MACHINE" == "beaglebonewifi" ]]; then
return
fi
chroot "$rootdir" dpkg -i /root/freedombone/drivers/firmware-ath9k-htc.deb chroot "$rootdir" dpkg -i /root/freedombone/drivers/firmware-ath9k-htc.deb
chroot "$rootdir" apt-get -yq install firmware-linux-free chroot "$rootdir" apt-get -yq install firmware-linux-free
} }
@ -2106,13 +2086,6 @@ case "$MACHINE" in
dd if=$rootdir/usr/lib/u-boot/am335x_boneblack/u-boot.img of="$image" \ dd if=$rootdir/usr/lib/u-boot/am335x_boneblack/u-boot.img of="$image" \
count=2 seek=1 conv=notrunc bs=384k count=2 seek=1 conv=notrunc bs=384k
;; ;;
beaglebonewifi)
touch $rootdir/root/.wifi-only
dd if=$rootdir/usr/lib/u-boot/am335x_boneblack/MLO of="$image" \
count=1 seek=1 conv=notrunc bs=128k
dd if=$rootdir/usr/lib/u-boot/am335x_boneblack/u-boot.img of="$image" \
count=2 seek=1 conv=notrunc bs=384k
;;
cubieboard2) cubieboard2)
dd if=$rootdir/usr/lib/u-boot/Cubieboard2/u-boot-sunxi-with-spl.bin of="$image" \ dd if=$rootdir/usr/lib/u-boot/Cubieboard2/u-boot-sunxi-with-spl.bin of="$image" \
seek=8 conv=notrunc bs=1k seek=8 conv=notrunc bs=1k

View File

@ -94,16 +94,11 @@ EOF
} }
beaglebone_flash() { beaglebone_flash() {
bbb_version=$1
# allow flash-kernel to work without valid /proc contents # allow flash-kernel to work without valid /proc contents
# ** this doesn't *really* work, since there are too many checks # ** this doesn't *really* work, since there are too many checks
# that fail in an emulated environment! We'll have to do it by # that fail in an emulated environment! We'll have to do it by
# hand below anyway... # hand below anyway...
if [[ "$bbb_version" == 'wireless' ]]; then
export FK_MACHINE="TI AM335x BeagleBone Black Wireless"
else
export FK_MACHINE="TI AM335x BeagleBone Black" export FK_MACHINE="TI AM335x BeagleBone Black"
fi
apt-get install -y flash-kernel apt-get install -y flash-kernel
} }
@ -250,12 +245,6 @@ case "$MACHINE" in
beaglebone_repack_kernel beaglebone_repack_kernel
enable_serial_console ttyO0 enable_serial_console ttyO0
;; ;;
beaglebonewifi)
beaglebone_setup_boot wireless
beaglebone_flash wireless
beaglebone_repack_kernel wireless
enable_serial_console ttyO0
;;
cubietruck) cubietruck)
a20_setup_boot sun7i-a20-cubietruck.dtb a20_setup_boot sun7i-a20-cubietruck.dtb
enable_serial_console ttyS0 enable_serial_console ttyS0

View File

@ -117,19 +117,6 @@ case "$MACHINE" in
--no-extlinux \ --no-extlinux \
--foreign /usr/bin/qemu-arm-static \ --foreign /usr/bin/qemu-arm-static \
--roottype btrfs \ --roottype btrfs \
"
;;
beaglebonewifi)
extra_pkgs="$beaglebone_pkgs"
extra_opts="\
--variant minbase \
--bootoffset=2mib \
--bootsize 128M \
--boottype ext2 \
--no-kernel \
--no-extlinux \
--foreign /usr/bin/qemu-arm-static \
--roottype btrfs \
" "
;; ;;
cubietruck | a20-olinuxino-lime | a20-olinuxino-lime2 | a20-olinuxino-micro | cubieboard2 | pcduino3) cubietruck | a20-olinuxino-lime | a20-olinuxino-lime2 | a20-olinuxino-micro | cubieboard2 | pcduino3)

View File

@ -97,17 +97,6 @@ beaglebone: prep
$(SIGN) $(SIGN)
@echo "Build complete." @echo "Build complete."
# build Beaglebone Black Wireless SD card image
beaglebonewifi: prep
$(eval ARCHITECTURE = armhf)
$(eval MACHINE = beaglebonewifi)
$(MAKE_IMAGE)
@rm -f $(ARCHIVE)
$(XZ) $(IMAGE)
@echo ""
$(SIGN)
@echo "Build complete."
# build Cubieboard2 SD card image # build Cubieboard2 SD card image
cubieboard2: prep cubieboard2: prep
$(eval ARCHITECTURE = armhf) $(eval ARCHITECTURE = armhf)

View File

@ -254,6 +254,10 @@ function create_letsencrypt_cert {
check_certificates ${SITE_DOMAIN_NAME} check_certificates ${SITE_DOMAIN_NAME}
else else
echo $"Lets Encrypt failed for $SITE_DOMAIN_NAME" echo $"Lets Encrypt failed for $SITE_DOMAIN_NAME"
if [ -f /etc/nginx/sites-available/$SITE_DOMAIN_NAME ]; then
nginx_dissite $SITE_DOMAIN_NAME
systemctl restart nginx
fi
exit 682529 exit 682529
fi fi
return return

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2018-02-12 Mon 20:13 --> <!-- 2018-02-17 Sat 21:19 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>&lrm;</title> <title>&lrm;</title>
@ -249,7 +249,7 @@ for the JavaScript code in this tag.
<blockquote> <blockquote>
<p> <p>
"<i>we are the music makers, we are the dreamers of dreams. cyberpunks and pirates. chaotic spectres hauting cyberspace. engineers, artists, hackers.</i>" "<i>we are the music makers, we are the dreamers of dreams. cyberpunks and pirates. chaotic spectres haunting cyberspace. engineers, artists, hackers.</i>"
</p> </p>
</blockquote> </blockquote>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2018-01-23 Tue 20:50 --> <!-- 2018-02-17 Sat 21:19 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>&lrm;</title> <title>&lrm;</title>
@ -248,6 +248,16 @@ for the JavaScript code in this tag.
<h1>How to install on an existing Debian system</h1> <h1>How to install on an existing Debian system</h1>
</center> </center>
<blockquote>
<p>
"<i>The antagonism of surveillance is not privacy but the making of communities in struggle</i>"
</p>
<p>
&#x2013; Arun Kundnani
</p>
</blockquote>
<p> <p>
Although the image builder supports a variety of architectures there may still be some which aren't supported. These especially include systems which have a proprietary boot blob, such as the Raspberry Pi boards. Although the image builder supports a variety of architectures there may still be some which aren't supported. These especially include systems which have a proprietary boot blob, such as the Raspberry Pi boards.
</p> </p>