02-14-2021, 08:31 PM
Hopefully this will help somebody. I had an old mini-pc, but no ARM-based pi device, so I recompiled for i386, and it SEEMS to work for the most part, although it was a giant pain. Lack of a unified structure presents a lot of potential support issues, although I suppose it might give a nerd tons of opportunity for code customization.
I don't THINK I will use keexybox, even though it is a great idea, because it lacks more robust support for iptables like control over NAT, and I would also like to be able to enable and disable my filtering (for example: block child X until child X completes his homework, then unblock *roblox.com). But otherwise, the interface is totally sweet.
--------------------------------------------
KEEXYBOX 20.10.2 install notes on i386 linux VM in VirtualBox 6.1:
----------------------------------------------------------
1) install i386 raspbios https://downloads.raspberrypi.org/rpd_x86/images/ - at the time I used
a recent version rpd_x86-2020-02-14. Download and install ISO in virtualbox 6.1
2) make some OS changes:
a) disable IPv6 (https://www.techrepublic.com/article/how...-on-linux/)
you can disable in /etc/sysctl.conf:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
b) screen resolution, allow SSH
c) pi defaults to user 'pi', password is whatever you set, and you can 'sudo su' to root
3) in this version of the OS, PHP7.3 will install. That is fine, but it creates issues for 2
packages, php-mcrypt (obsolete), and php-tcpdf (obsolete, but has backport)
a) to install php-tcpdf, edit /etc/apt/sources.list. Add a source:
deb http://ftp.debian.org/debian/ buster-backports main
then install the package:
apt install php-tcpdf
b) to install mcrypt, this is a bit harder, since there is no backport.
1. apt-get install php-dev libmcrypt-dev php-pear
2. pecl channel-update pecl.php.net
3. pecl install channel://pecl.php.net/mcrypt-1.0.2
4. edit /etc/php/7.3/cli/php.ini and add line 'extension=mcrypt.so'.
5. 'php -m | grep mcrypt' should return 'mcrypt'
6. ok, now, we need to tell keexybox to ignore the missing mcrypt package:
7. in install package (do this later, we havent created this yet), go in to
/keexybox-20.10.2/util/required_packages.conf and comment out
'php-mcrypt'
keexybox is for pi devices which use ARM architecture, not i386, so you cant use default packages.
you must follow manual build process to create i386 binaries:
https://wiki.keexybox.org/doku.php/manual_installation
random problems I encountered:
---------------------------------------------------------
had to modify apache2.conf to keep apache from crashing:
Mutex posixsem
locked myself out, had to reset admin password (there seems to be a lack of documented support for CLI administration):
/opt/keexybox/keexyapp/bin/cake users UpdateAdminPassword <password>
booting hung with 'you are in emergency mode' - i screwed up my cdrom mount. comment that line /dev/sr0
out of /etc/fstab
I don't THINK I will use keexybox, even though it is a great idea, because it lacks more robust support for iptables like control over NAT, and I would also like to be able to enable and disable my filtering (for example: block child X until child X completes his homework, then unblock *roblox.com). But otherwise, the interface is totally sweet.
--------------------------------------------
KEEXYBOX 20.10.2 install notes on i386 linux VM in VirtualBox 6.1:
----------------------------------------------------------
1) install i386 raspbios https://downloads.raspberrypi.org/rpd_x86/images/ - at the time I used
a recent version rpd_x86-2020-02-14. Download and install ISO in virtualbox 6.1
2) make some OS changes:
a) disable IPv6 (https://www.techrepublic.com/article/how...-on-linux/)
you can disable in /etc/sysctl.conf:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
b) screen resolution, allow SSH
c) pi defaults to user 'pi', password is whatever you set, and you can 'sudo su' to root
3) in this version of the OS, PHP7.3 will install. That is fine, but it creates issues for 2
packages, php-mcrypt (obsolete), and php-tcpdf (obsolete, but has backport)
a) to install php-tcpdf, edit /etc/apt/sources.list. Add a source:
deb http://ftp.debian.org/debian/ buster-backports main
then install the package:
apt install php-tcpdf
b) to install mcrypt, this is a bit harder, since there is no backport.
1. apt-get install php-dev libmcrypt-dev php-pear
2. pecl channel-update pecl.php.net
3. pecl install channel://pecl.php.net/mcrypt-1.0.2
4. edit /etc/php/7.3/cli/php.ini and add line 'extension=mcrypt.so'.
5. 'php -m | grep mcrypt' should return 'mcrypt'
6. ok, now, we need to tell keexybox to ignore the missing mcrypt package:
7. in install package (do this later, we havent created this yet), go in to
/keexybox-20.10.2/util/required_packages.conf and comment out
'php-mcrypt'
keexybox is for pi devices which use ARM architecture, not i386, so you cant use default packages.
you must follow manual build process to create i386 binaries:
https://wiki.keexybox.org/doku.php/manual_installation
random problems I encountered:
---------------------------------------------------------
had to modify apache2.conf to keep apache from crashing:
Mutex posixsem
locked myself out, had to reset admin password (there seems to be a lack of documented support for CLI administration):
/opt/keexybox/keexyapp/bin/cake users UpdateAdminPassword <password>
booting hung with 'you are in emergency mode' - i screwed up my cdrom mount. comment that line /dev/sr0
out of /etc/fstab