mirror of
https://github.com/femtofox/femtofox.git
synced 2026-10-25 18:40:20 -04:00
Add samba to chroot
This commit is contained in:
parent
ab8342fc93
commit
a1e1009fb3
3 changed files with 5 additions and 13 deletions
|
|
@ -9,23 +9,19 @@ echo "tmpfs /run tmpfs rw,nodev,nosuid,size=32M 0 0" | tee -a /etc/fstab
|
|||
#echo "deb [arch=all signed-by=/etc/apt/keyrings/meshtastic-deb.asc] https://meshtastic.github.io/deb stable main" | tee /etc/apt/sources.list.d/meshtastic-deb.list >/dev/null
|
||||
|
||||
echo "Removing netdevice rules..."
|
||||
|
||||
ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
|
||||
|
||||
echo "Setting up kernel modules..."
|
||||
|
||||
touch /lib/modules/5.10.160/modules.order
|
||||
touch /lib/modules/5.10.160/modules.builtin
|
||||
depmod -a 5.10.160
|
||||
if [[ $? -eq 2 ]]; then echo "Error, step failed..."; fi
|
||||
|
||||
echo "Setting localtime to UTC..."
|
||||
|
||||
rm /etc/localtime
|
||||
ln -sf /usr/share/zoneinfo/UTC /etc/localtime
|
||||
|
||||
echo "Installing packages..."
|
||||
|
||||
apt update
|
||||
DEBIAN_FRONTEND=noninteractive apt install -y --option Dpkg::Options::="--force-confold" linux-firmware wireless-tools git python3.10-venv libgpiod-dev libyaml-cpp-dev libbluetooth-dev openssl libssl-dev libulfius-dev liborcania-dev evtest screen avahi-daemon protobuf-compiler telnet fonts-noto-color-emoji ninja-build chrony qrencode software-properties-common python-is-python3 python3.10-venv lsof spi-tools python3-luma.oled samba
|
||||
if [[ $? -eq 2 ]]; then echo "Error, step failed..."; fi
|
||||
|
|
@ -41,17 +37,17 @@ echo "Installing dependencies for meshing-around and meshtastic cli..."
|
|||
pip3 install requests pyephem pytap2 meshtastic pypubsub geopy maidenhead beautifulsoup4 dadjokes schedule wikipedia googlesearch-python
|
||||
if [[ $? -eq 2 ]]; then echo "Error, step failed..."; fi
|
||||
|
||||
echo "Setting MOTD..."
|
||||
echo "Adding Samba configuration..." # add it manually so we're always using the most up to date smb.conf file template from the package
|
||||
echo -e "\n[home]\npath = /home/femto\nbrowsable = yes\nwritable = yes\nread only = no\ncreate mask = 0775\ndirectory mask = 0775\nvalid users = femto" | sudo tee -a /etc/samba/smb.conf > /dev/null && sudo systemctl restart smbd
|
||||
|
||||
echo "Setting MOTD..."
|
||||
mv /etc/update-motd.d/10-help-text /etc/update-motd.d/10-help-text.bak
|
||||
mv /etc/update-motd.d/60-unminimize /etc/update-motd.d/60-unminimize.bak
|
||||
|
||||
echo "Setting hostname to femtofox..."
|
||||
|
||||
echo "femtofox" | tee /etc/hostname > /dev/null
|
||||
|
||||
echo "Configuring autostart of systemd services..."
|
||||
|
||||
systemctl enable button
|
||||
systemctl enable meshtasticd
|
||||
systemctl enable femto-runonce.service
|
||||
|
|
@ -78,7 +74,6 @@ systemctl disable veritysetup.target
|
|||
systemctl disable systemd-pstore.service
|
||||
|
||||
echo "Adding femto and pico users/groups..."
|
||||
|
||||
groupmod -n femto pico
|
||||
usermod -l femto pico
|
||||
usermod -aG sudo,input femto
|
||||
|
|
@ -86,7 +81,6 @@ echo "femto ALL=(ALL:ALL) ALL" | tee /etc/sudoers.d/femto > /dev/null
|
|||
chmod 440 /etc/sudoers.d/femto
|
||||
|
||||
# this seems messy, user:group should be set cleanly and not corrected after? OSC: somethings were owned my pico from factory
|
||||
|
||||
find / -group pico -exec chgrp femto {} \; 2>/dev/null
|
||||
find / -user pico -exec chown femto {} \; 2>/dev/null
|
||||
usermod -d /home/femto -m femto
|
||||
|
|
@ -97,6 +91,5 @@ usermod -a -G tty femto
|
|||
usermod -a -G dialout femto
|
||||
|
||||
echo "Cleaning up chroot..."
|
||||
|
||||
apt clean && rm -rf /var/lib/apt/lists/* && rm -rf /tmp/* && rm -rf /var/tmp/* && find /var/log -type f -exec truncate -s 0 {} + && : > /root/.bash_history && history -c
|
||||
exit
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ if ! grep -q "eth0" /etc/network/interfaces; then
|
|||
# static mac address for onboard ethernet (castellated pins)
|
||||
allow-hotplug eth0
|
||||
iface eth0 inet dhcp
|
||||
hwaddress ether $(awk '/Serial/ {print $3}' /proc/cpuinfo | tail -c 11 | sed 's/^\(.*\)/a2\1/' | sed 's/\(..\)/\1:/g;s/:$//')
|
||||
hwaddress ether $mac
|
||||
EOF
|
||||
else
|
||||
log_message "eth0 already exists in /etc/network/interfaces, skipping"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,6 @@ install() {
|
|||
echo "Installing $($package_dir/$1.sh -N)..."
|
||||
# Run the installation script, capturing the output and displaying it in real time
|
||||
output=$($package_dir/$1.sh -i)
|
||||
echo $output
|
||||
install_status=$? # Capture the exit status of the eval command
|
||||
user_message=$(echo "$output" | awk '/user_message: / {found=1; split($0, arr, "user_message: "); print arr[2]; next} found {print}' | sed '/^$/q') # grab the user_message, if present
|
||||
#output=$(echo -e "$output" | sed '/user_message: /,$d') # remove the user message from the detailed output
|
||||
|
|
@ -37,7 +36,7 @@ uninstall() {
|
|||
dialog --no-collapse --colors --title "$title" --beep --msgbox "\n\ZuUninstallation of $($package_dir/$1.sh -N) successful!\Zn$([ -n "$user_message" ] && echo "\n\n$user_message")\n\nLog:\n$(echo -e "$output")" 0 0 # if there's a user_message, display it with two preceeding line breaks
|
||||
else
|
||||
dialog --no-collapse --colors --title "$title" --beep --msgbox "\n\ZuUninstallation of $($package_dir/$1.sh -N) FAILED!\Zn\n\n$user_message\n\nLog:\n$(echo "$output")" 0 0 # if there's a user_message, display it with two preceeding line breaks
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
upgrade() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue