Try wget https://bash.commongrounds.cc/uploads/1752986547_nscde.sh
from the console
#!/bin/bash #sudo apt-get install fvwm libx11-dev libxpm-dev libxt-dev libxext-dev libstfl0-dev python3-pyqt5 xterm stterm x11-xserver-utils x11-utils xfonts-base xfonts-100dpi xfonts-75dpi fonts-dejavu-core fonts-liberation libyaml-dev #cd /tmp #wget https://github.com/NsCDE/NsCDE/releases/download/2.3/nscde_2.3-1_amd64.deb #sudo dpkg -i nscde_2.3-1_amd64.deb #sudo apt-get install -f #sudo apt-get install lightdm #nscde_setup #!/bin/bash # Script to install NsCDE on Devuan GNU+Linux # Tested for Devuan Daedalus 5.0 and Chimaera 4.0 # Run as root or with sudo # Exit on error set -e # Logging setup LOGFILE="/var/log/nscde_install_$(date +%F_%H-%M-%S).log" exec 1> >(tee -a "$LOGFILE") exec 2>&1 echo "NsCDE Installation Log - $(date)" echo "-----------------------------------" # Variables NSCDE_VERSION="2.3" NSCDE_DEB_URL="https://github.com/NsCDE/NsCDE/releases/download/${NSCDE_VERSION}/nscde_${NSCDE_VERSION}-1_amd64.deb" NSCDE_DEB_FILE="/tmp/nscde_${NSCDE_VERSION}-1_amd64.deb" DISPLAY_MANAGER="lightdm" # Function to check if running as root check_root() { if [ "$EUID" -ne 0 ]; then echo "ERROR: This script must be run as root or with sudo." exit 1 fi } # Function to check internet connectivity check_internet() { echo "Checking internet connectivity..." if ! ping -c 3 8.8.8.8 > /dev/null 2>&1; then echo "ERROR: No internet connection. Please ensure you have an active network." exit 1 fi } # Function to update system update_system() { echo "Updating system packages..." apt-get update apt-get upgrade -y } # Function to install dependencies install_dependencies() { echo "Installing NsCDE dependencies..." apt-get install -y \ fvwm \ libx11-dev \ libxpm-dev \ libxt-dev \ libxext-dev \ libstfl0-dev \ python3-pyqt5 \ xterm \ stterm \ x11-xserver-utils \ x11-utils \ xfonts-base \ xfonts-100dpi \ xfonts-75dpi \ fonts-dejavu-core \ fonts-liberation \ libyaml-dev \ || { echo "ERROR: Failed to install dependencies." exit 1 } } # Function to install display manager install_display_manager() { echo "Installing display manager ($DISPLAY_MANAGER)..." if ! dpkg -l | grep -q "$DISPLAY_MANAGER"; then apt-get install -y "$DISPLAY_MANAGER" || { echo "ERROR: Failed to install $DISPLAY_MANAGER." exit 1 } else echo "$DISPLAY_MANAGER is already installed." fi } # Function to download and install NsCDE install_nscde() { echo "Downloading NsCDE v${NSCDE_VERSION}..." if ! wget -q "$NSCDE_DEB_URL" -O "$NSCDE_DEB_FILE"; then echo "ERROR: Failed to download NsCDE package from $NSCDE_DEB_URL." echo "Check the URL or try building from source: https://github.com/NsCDE/NsCDE" exit 1 fi echo "Installing NsCDE..." if ! dpkg -i "$NSCDE_DEB_FILE"; then echo "WARNING: dpkg encountered issues. Attempting to fix dependencies..." apt-get install -f -y || { echo "ERROR: Failed to install NsCDE or resolve dependencies." exit 1 } fi echo "Cleaning up downloaded package..." rm -f "$NSCDE_DEB_FILE" } # Function to configure NsCDE configure_nscde() { echo "Configuring NsCDE for all users..." for user_home in /home/*; do if [ -d "$user_home" ]; then username=$(basename "$user_home") echo "Setting up NsCDE for user: $username" su - "$username" -c "nscde_setup" || { echo "WARNING: Failed to run nscde_setup for $username. Run 'nscde_setup' manually as the user." } fi done echo "Updating font cache..." fc-cache -fv xset fp rehash || echo "WARNING: xset fp rehash failed. Fonts may not display correctly." } # Function to ensure NsCDE session file exists setup_session_file() { echo "Setting up NsCDE session file..." SESSION_FILE="/usr/share/xsessions/nscde.desktop" if [ ! -f "$SESSION_FILE" ]; then cat << EOF > "$SESSION_FILE" [DesktopEntry] Name=NsCDE Comment=Not so Common Desktop Environment Exec=/usr/bin/nscde_start Type=Application EOF chmod 644 "$SESSION_FILE" echo "Created $SESSION_FILE." else echo "$SESSION_FILE already exists." fi } # Main installation process main() { echo "Starting NsCDE installation on Devuan..." check_root check_internet update_system install_dependencies install_display_manager install_nscde configure_nscde setup_session_file echo "-----------------------------------" echo "NsCDE installation completed successfully!" echo "Log out and select the NsCDE session in $DISPLAY_MANAGER." echo "Log file: $LOGFILE" echo "If issues occur, check https://github.com/NsCDE/NsCDE or https://nscde.fedorapeople.org/" } # Execute main function main exit 0BASH to Home