├── lib ├── libmmal.so ├── libvcos.so ├── libvcsm.so ├── libbcm_host.so ├── libcontainers.so ├── libmmal_core.so ├── libmmal_util.so ├── libvchiq_arm.so ├── libmmal_components.so └── libmmal_vc_client.so ├── README.md └── Makefile /lib/libmmal.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libmmal.so -------------------------------------------------------------------------------- /lib/libvcos.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libvcos.so -------------------------------------------------------------------------------- /lib/libvcsm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libvcsm.so -------------------------------------------------------------------------------- /lib/libbcm_host.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libbcm_host.so -------------------------------------------------------------------------------- /lib/libcontainers.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libcontainers.so -------------------------------------------------------------------------------- /lib/libmmal_core.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libmmal_core.so -------------------------------------------------------------------------------- /lib/libmmal_util.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libmmal_util.so -------------------------------------------------------------------------------- /lib/libvchiq_arm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libvchiq_arm.so -------------------------------------------------------------------------------- /lib/libmmal_components.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libmmal_components.so -------------------------------------------------------------------------------- /lib/libmmal_vc_client.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avarakin/AstroPiMaker4/HEAD/lib/libmmal_vc_client.so -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Introduction 2 | 3 | This project contains instructions and Makefile for setting up a portable Astrophotography computer. 4 | 5 | It can be used for setting up different computers: Orange Pi 5, Raspberry Pi, Libre Computers Le Potato and a regular x86 PC. 6 | 7 | At this point in time (March 2023) it is strongly recommended using Orange Pi 5: it costs less than Raspberry Pi 4, has 4GB of memory in minimal configuration and much faster CPU. 8 | 9 | Why use makefile as opposed to shell script? Because make stops execution in case of failures and can be invoked for the whole installation or for a part of it. 10 | 11 | Why not use Astroberry? Because you want to know what exactly is intalled or you want to customize installation or you just don't trust downloading random images from the internet 12 | 13 | # Warning 14 | This script is better suited for users, who have experience with Linux and want to build a system from scratch, utilizing official images from Ubuntu. 15 | In case if you don't have experience with Linux, it is suggested to install Astroberry image or buy StellarMate image. 16 | 17 | # List of features: 18 | 1. Installs most commonly used Astrophotography software: 19 | * INDI 20 | * Kstars 21 | * PHD2 22 | * CCDCiel 23 | * PHD Log Viewer 24 | * Skychart 25 | * Astrometry with sextractor 26 | * ASTAP plate solver, which is much faster than astrometry 27 | 2. Sets up Wireless Access Point. Default name is RPI and password is password but can be changed in the script. Once connected to WAP, IP address of PI is 10.0.0.1 28 | 3. Sets up vnc to be started automatically 29 | 4. Configures screen to be 1920x1080 for headless operation 30 | 5. Miscellaneous software 31 | * Syncthing for syncing images into processing PC 32 | * Arduino IDE 33 | 6. Fully headless operation 34 | 35 | 36 | # Installation on OrangePi 5 37 | 38 | 1. Install Jammy (22.04) Xfce Desktop image from Orange Pi website 39 | 2. Power on the Pi, once in Xfce desktop, open terminal and run the commands as below (password is orangepi on the 1st line). 40 | ``` 41 | sudo bash 42 | adduser YOUR_USERNAME 43 | adduser YOUR_USERNAME sudo 44 | su YOUR_USERNAME 45 | cd 46 | git clone https://github.com/avarakin/AstroPiMaker4.git 47 | cd AstroPiMaker4 48 | make opi5 49 | ``` 50 | 3. Reboot 51 | 4. Connect to Pi using VNC client, keep in mind that you have to use display :1, e.g. enter orangepi5.lan:1 as server address. 52 | 53 | **Notes** 54 | 1. Alternatively, you can install everything headlessly: just ssh into the Pi: 55 | ``` 56 | ssh orangepi@orangepi5.lan 57 | ``` 58 | 2. During update, there will be a question asked about what to do about configuration file '/etc/issue'. You can just hit enter on it, and it will keep the existing file, or you can enter 'Y' so the file gets updates with the content from the repository so in future you will never have to deal with it 59 | 60 | 61 | 62 | 63 | 64 | # Installation on Raspberry Pi 65 | 66 | 1. Downlaod 32 bit image of 20.04 from page: 67 | 68 | https://ubuntu.com/download/raspberry-pi 69 | 70 | It looks like they use same image for RPi3 and RPi4, so same image can be used for RPi3 71 | 72 | 2. Unpack and burn image into SD Card. 73 | 74 | 3. Connect to Pi 75 | 76 | Connect Ethernet cable, put the card into RPI and boot. 77 | 78 | Once green networking LED starts blinking, you can try to find the RPI on the network using nmap. 79 | Replace 192.168.1.0 by your network's subnet: 80 | 81 | ``` 82 | nmap -p 22 --open -sV 192.168.1.0/24 83 | ``` 84 | 85 | You can also find IP address of your RPi in your router admin page, look for DHCP leases. 86 | Of course, you can also just add connect mouse, keyboard and screen and find the IP using command: 87 | ``` 88 | ip addr 89 | ``` 90 | 91 | 92 | Once you identify IP of your PI, login into it using ssh, with user/password : ubuntu/ubuntu, e.g.: 93 | 94 | ``` 95 | ssh ubuntu@192.168.1.100 96 | ``` 97 | 98 | It will ask to change the password. 99 | 100 | 4. Install the software 101 | 102 | Run the following commands. 103 | At some point installer will ask to select Display Manager. You need to chose lightdm. 104 | 105 | ``` 106 | sudo apt update 107 | sudo apt install -y git make 108 | git clone https://github.com/avarakin/AstroPiMaker4.git 109 | cd AstroPiMaker4 110 | make 111 | ``` 112 | This will take an hour or so. It may ask some questions, so monitor the process. 113 | You will need to reboot Pi after that. 114 | Once Pi is up, you should be able to see it as RPI in the list of available Access Points. Password is "password" but can be changed in the script. Once connected to WAP, IP address of PI is 10.0.0.1 115 | 116 | # Steps after installation 117 | 1. Reboot the system. 118 | 2. Connect to it using VNC 119 | 3. Installer creates a startup script indi.sh in home directory which you need to edit to include your drivers 120 | 4. In case if you run Gnome, you can change the look and feel of desktop to be more conventional by opening Gnome Tweaks tool and enabling "Dash to Panel" and "System Monitor" extensions 121 | 122 | # Installation for x86 PC 123 | Install any flavor of Ubuntu you like and then install script and rest of software: 124 | ``` 125 | sudo apt update 126 | sudo apt install -y git make 127 | git clone https://github.com/avarakin/AstroPiMaker4.git 128 | cd AstroPiMaker4 129 | make pc 130 | ``` 131 | # Installation on Libre Computer Le Potato 132 | Libre Computer Le Potato is a low cost ($35 as of January 2023) Raspberry Pi clone, which is widely available. It does have some shortcomings comparing to Pi 4: 133 | 1. Lower speed, e.g. it takes 30s to plate solve an image vs 22s on RPi4 134 | 2. It only has USB2 and no USB3, but performance degradation was not noticeable even for 26MB IMX571 mono chip 135 | 3. Network is only 100MB and not 1GB, but performance degradation was not noticeable while using VNC 136 | 4. Even though Wifi is missing, it can be added using a USB dongle, which also has an advantage of having an external antenna 137 | 5. Missing Bluetooth is not a big loss for this use case 138 | 6. Even thouhg this computer comes with only 2GB or RAM, it can still work with 26MB IMX571 mono chip by setting up swap space. No performance degradation was observed due to swapping 139 | 140 | 141 | ## Installation steps 142 | Even though you can use desktop version of Le Potato image as a starting point, it it not recommended because Gnome based Ubuntu desktop is resource intensive and may cause periodic freezing. Furthermore, Ubuntu desktop version comes with software which is redundant for the given use case. The instructions assume that you use base Ubuntu image of Le Potato as a starting point. 143 | The script installs Mate desktop which is very light weight. 144 | 145 | 1. Download base version of Ubuntu: 146 | https://distro.libre.computer/ci/ubuntu/22.04/ubuntu-22.04.1-preinstalled-server-arm64%2Baml-s905x-cc.img.xz 147 | 2. Burn it on SD card, insert it into the board and power it up 148 | 3. Once computer is up, you need to create your user: 149 | ``` 150 | adduser YOUR_USERNAME 151 | apt install sudo 152 | adduser YOUR_USERNAME sudo 153 | 154 | ``` 155 | 4. Install base software, script and run installer 156 | ``` 157 | su YOUR_USERNAME 158 | sudo apt update 159 | sudo apt upgrade 160 | sudo apt install -y git make dialog 161 | git clone https://github.com/avarakin/AstroPiMaker4.git 162 | cd AstroPiMaker4 163 | make le_potato 164 | ``` 165 | 5. Change hostname in /etc/hostname 166 | 167 | 168 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | pi4: tz update utils speedup display mate-desktop indi kstars ccdciel skychart phd realvnc groups astrometry sample_startup syncthing dnsmasq autostart astap wap 2 | 3 | le_potato: update utils mate-desktop indi kstars ccdciel skychart phd groups astrometry sample_startup syncthing autostart tightvnc swap 4 | 5 | opi5: tz update xfce utils indi kstars ccdciel skychart phd groups astrometry sample_startup syncthing tightvnc groups arduino astap wap 6 | 7 | x86: update utils groups indi kstars ccdciel skychart phd astrometry sample_startup vnc syncthing astap_x86 8 | #astap 9 | #realvnc autostart speedup display 10 | 11 | extras: arduino libraw 12 | 13 | tz: 14 | sudo dpkg-reconfigure tzdata 15 | 16 | update: 17 | sudo apt update 18 | sudo apt upgrade -y 19 | sudo apt purge -y unattended-upgrades 20 | 21 | 22 | 23 | serial: 24 | sudo echo enable_uart=1 >> /boot/config.txt 25 | sudo sed -i.bak 's/console=serial0,115200//' /boot/firmware/cmdline.txt 26 | sudo systemctl stop serial-getty@ttyS0.service 27 | sudo systemctl disable serial-getty@ttyS0.service 28 | sudo sh -c "echo 'KERNEL==\"ttyS0\", SYMLINK+=\"serial0\" GROUP=\"tty\" MODE=\"0660\"' > /etc/udev/rules.d/80-serial.rules" 29 | sudo sh -c "echo 'KERNEL==\"ttyAMA0\", SYMLINK+=\"serial1\" GROUP=\"tty\" MODE=\"0660\"' >> /etc/udev/rules.d/80-serial.rules" 30 | cat /etc/udev/rules.d/80-serial.rules 31 | #sudo udevadm control --reload-rules 32 | #sudo udevadm trigger 33 | 34 | serial_after_reboot: 35 | sudo chgrp -h tty /dev/serial0 36 | sudo chgrp -h tty /dev/serial1 37 | sudo adduser $$USER tty 38 | sudo adduser $$USER dialout 39 | 40 | 41 | nomachine: 42 | wget https://download.nomachine.com/download/7.3/Raspberry/nomachine_7.3.2_1_armhf.deb 43 | sudo dpkg -i nomachine_7.3.2_1_armhf.deb 44 | rm nomachine_7.3.2_1_armhf.deb 45 | 46 | 47 | #install general utilities 48 | utils : 49 | sudo apt -y install dialog apt-utils software-properties-common curl net-tools mc git vim ssh x11vnc zsh synaptic fonts-roboto terminator remmina htop 50 | sudo apt update 51 | 52 | autostart: 53 | sudo sh -c "echo [SeatDefaults] > /etc/lightdm/lightdm.conf" 54 | sudo sh -c "echo greeter-session=lightdm-gtk-greeter >> /etc/lightdm/lightdm.conf" 55 | sudo sh -c "echo autologin-user=$$USER >> /etc/lightdm/lightdm.conf" 56 | 57 | 58 | display : 59 | sudo sh -c "echo '[all]' > /boot/firmware/usercfg.txt" 60 | sudo sh -c "echo 'hdmi_force_hotplug=1' >> /boot/firmware/usercfg.txt" 61 | sudo sh -c "echo 'hdmi_ignore_edid=0xa5000080' >> /boot/firmware/usercfg.txt" 62 | sudo sh -c "echo 'hdmi_group=2' >> /boot/firmware/usercfg.txt" 63 | sudo sh -c "echo 'hdmi_mode=82' >> /boot/firmware/usercfg.txt" 64 | sudo sh -c "echo 'disable_overscan=1' >> /boot/firmware/usercfg.txt" 65 | 66 | xfce : 67 | sudo sudo apt install -y xfce4-goodies indicator-multiload 68 | 69 | 70 | lxde-desktop : 71 | sudo sudo apt install -y lubuntu-desktop 72 | 73 | kde-desktop : 74 | sudo apt -y install kde-plasma-desktop plasma-nm lightdm 75 | 76 | speedup : 77 | sudo apt -y purge cloud-init 78 | sudo rm -rf /etc/cloud/ 79 | sudo rm -rf /var/lib/cloud/ 80 | 81 | 82 | mate-desktop : 83 | sudo apt -y install ubuntu-mate-desktop lightdm 84 | 85 | 86 | gnome-desktop : 87 | sudo apt -y install lightdm gnome-tweaks gnome-shell-extension-dash-to-panel gnome-system-monitor gnome-shell-extension-system-monitor gnome-session 88 | 89 | indi : 90 | sudo apt -y remove brltty 91 | sudo apt-add-repository -y ppa:mutlaqja/ppa 92 | sudo apt update 93 | sudo apt -y install indi-full 94 | 95 | kstars : 96 | sudo apt-add-repository -y ppa:mutlaqja/ppa 97 | sudo apt update 98 | sudo apt -y install kstars-bleeding 99 | 100 | astrometry : 101 | sudo apt -y install astrometry.net astrometry-data-tycho2 astrometry-data-2mass-08-19 astrometry-data-2mass-08-19 astrometry-data-2mass-07 astrometry-data-2mass-06 sextractor 102 | 103 | #install ccdciel and skychart 104 | skychart : 105 | sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys AA716FC2 106 | sudo sh -c "echo 'deb http://www.ap-i.net/apt unstable main' > /etc/apt/sources.list.d/skychart.list" 107 | sudo apt update 108 | sudo apt -y install skychart 109 | 110 | ccdciel : 111 | sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys AA716FC2 112 | sudo sh -c "echo 'deb http://www.ap-i.net/apt unstable main' > /etc/apt/sources.list.d/skychart.list" 113 | sudo apt update 114 | sudo apt -y install ccdciel 115 | 116 | 117 | 118 | #install phd2 119 | phd : 120 | sudo add-apt-repository -y ppa:pch/phd2 121 | sudo apt update 122 | sudo apt -y install phd2 phdlogview 123 | 124 | 125 | #create a sample INDI startup shell script 126 | sample_startup : 127 | echo "indiserver -v indi_lx200_OnStep indi_sbig_ccd indi_asi_ccd indi_sx_wheel" > ~/indi.sh 128 | chmod 777 ~/indi.sh 129 | 130 | 131 | dnsmasq : 132 | sudo systemctl stop systemd-resolved 133 | sudo systemctl disable systemd-resolved 134 | sudo rm /etc/resolv.conf 135 | sudo sh -c "echo 'nameserver 8.8.8.8' > /etc/resolv.conf" 136 | sudo chattr -e /etc/resolv.conf 137 | sudo chattr +i /etc/resolv.conf 138 | sudo sh -c "echo '127.0.0.1 ubuntu' >> /etc/hosts" 139 | sudo apt -y install dnsmasq 140 | 141 | gps: 142 | sudo apt install gpsd 143 | sudo systemctl status gpsd 144 | sudo systemctl start gpsd 145 | sudo systemctl enable gpsd 146 | sudo systemctl status gpsd 147 | 148 | 149 | 150 | wap : 151 | sudo apt -y install hostapd dnsmasq make linux-firmware 152 | git clone https://github.com/oblique/create_ap 153 | cd create_ap && sudo make install 154 | rm -rf create_ap 155 | #configure access point id and password 156 | sudo sed -i.bak 's/SSID=MyAccessPoint/SSID=RPI/' /etc/create_ap.conf 157 | sudo sed -i.bak 's/PASSPHRASE=12345678/PASSPHRASE=password/' /etc/create_ap.conf 158 | sudo systemctl enable create_ap 159 | sudo systemctl start create_ap 160 | sudo systemctl status create_ap 161 | 162 | auto_login: 163 | sudo sh -c "echo '[SeatDefaults]' > /etc/lightdm/lightdm.conf" 164 | sudo sh -c "echo 'greeter-session=lightdm-gtk-greeter' >> /etc/lightdm/lightdm.conf" 165 | sudo sh -c "echo 'autologin-user=ubuntu' >> /etc/lightdm/lightdm.conf" 166 | 167 | #configure x11vnc 168 | VNC=/lib/systemd/system/x11vnc.service 169 | vnc : 170 | sudo sh -c "echo '[Unit]' > $(VNC)" 171 | sudo sh -c "echo 'Description=Start x11vnc at startup.' >> $(VNC)" 172 | sudo sh -c "echo 'After=multi-user.target' >> $(VNC)" 173 | sudo sh -c "echo '[Service]'>> $(VNC)" 174 | sudo sh -c "echo 'Type=simple'>> $(VNC)" 175 | sudo sh -c "echo 'ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared'>> $(VNC)" 176 | sudo sh -c "echo '[Install]'>> $(VNC)" 177 | sudo sh -c "echo 'WantedBy=multi-user.target'>> $(VNC)" 178 | sudo x11vnc -storepasswd /etc/x11vnc.pass 179 | sudo systemctl enable x11vnc.service 180 | sudo systemctl start x11vnc.service 181 | 182 | 183 | astap_x86: 184 | wget https://netactuate.dl.sourceforge.net/project/astap-program/star_databases/h18_star_database_mag18_astap.deb 185 | sudo dpkg -i h18_star_database_mag18_astap.deb 186 | rm h18_star_database_mag18_astap.deb 187 | wget https://phoenixnap.dl.sourceforge.net/project/astap-program/linux_installer/astap_amd64.deb 188 | sudo dpkg -i astap_amd64.deb 189 | rm astap_amd64.deb 190 | 191 | 192 | astap: 193 | wget https://master.dl.sourceforge.net/project/astap-program/star_databases/d50_star_database.deb 194 | sudo dpkg -i d50_star_database.deb 195 | wget https://versaweb.dl.sourceforge.net/project/astap-program/linux_installer/astap_arm64.deb 196 | sudo dpkg -i astap_arm64.deb 197 | rm astap_arm64.deb d50_star_database.deb 198 | 199 | groups : 200 | sudo usermod -a -G dialout $(USER) 201 | 202 | disable_auto_mount_of_dslr: 203 | gsettings set org.mate.media-handling automount false 204 | 205 | 206 | realvnc_x86: 207 | wget https://downloads.realvnc.com/download/file/vnc.files/VNC-Server-6.10.1-Linux-x64.deb 208 | sudo dpkg -i VNC-Server-6.10.1-Linux-x64.deb 209 | sudo systemctl start vncserver-virtuald.service 210 | sudo systemctl start vncserver-x11-serviced.service 211 | sudo systemctl enable vncserver-virtuald.service 212 | sudo systemctl enable vncserver-x11-serviced.service 213 | rm VNC-Server-6.10.1-Linux-x64.deb 214 | #the commands below are needed if you want to use 3rd party vnc clients, while connecting to Pi 215 | sudo vncpasswd -service 216 | sudo sh -c "echo Authentication=VncAuth >> /root/.vnc/config.d/vncserver-x11" 217 | sudo systemctl restart vncserver-x11-serviced.service 218 | 219 | 220 | realvnc: 221 | wget https://www.realvnc.com/download/file/vnc.files/VNC-Server-6.7.2-Linux-ARM.deb 222 | sudo mkdir -p /opt/vc/lib 223 | sudo cp lib/*.so /opt/vc/lib 224 | sudo dpkg -i VNC-Server-6.7.2-Linux-ARM.deb 225 | sudo systemctl start vncserver-virtuald.service 226 | sudo systemctl start vncserver-x11-serviced.service 227 | sudo systemctl enable vncserver-virtuald.service 228 | sudo systemctl enable vncserver-x11-serviced.service 229 | rm VNC-Server-6.7.2-Linux-ARM.deb 230 | #the commands below are needed if you want to use 3rd party vnc clients, while connecting to Pi 231 | sudo vncpasswd -service 232 | sudo sh -c "echo Authentication=VncAuth >> /root/.vnc/config.d/vncserver-x11" 233 | sudo systemctl restart vncserver-x11-serviced.service 234 | 235 | upgrade_vnc: 236 | sudo systemctl stop x11vnc.service 237 | sudo systemctl disable x11vnc.service 238 | make realvnc 239 | 240 | tightvnc: 241 | sudo apt install tightvncserver 242 | tightvncserver 243 | sudo sh -c "echo '#!/bin/sh -e' > /etc/rc.local" 244 | sudo sh -c "echo 'sudo -u $$USER tightvncserver :1 -geometry 1920x1080 -depth 24' >> /etc/rc.local" 245 | sudo sh -c "echo 'exit 0' >> /etc/rc.local" 246 | sudo sh -c "chmod 777 /etc/rc.local" 247 | 248 | 249 | 250 | tigervnc : 251 | sudo apt -y install tigervnc-standalone-server tigervnc-common 252 | #vncserver 253 | #populate config file 254 | mkdir -p ~/.vnc 255 | echo geometry=1920x1080 > ~/.vnc/config 256 | echo alwaysshared >> ~/.vnc/config 257 | echo localhost=no >> ~/.vnc/config 258 | #add user 259 | sudo sh -c "echo :1=$(USER) >> /etc/tigervnc/vncserver.users" 260 | #populate xstartup 261 | echo "#!/bin/sh" > ~/.vnc/xstartup 262 | echo "unset SESSION_MANAGER">> ~/.vnc/xstartup 263 | echo "unset DBUS_SESSION_BUS_ADDRESS">> ~/.vnc/xstartup 264 | echo "/usr/bin/mate-session">> ~/.vnc/xstartup 265 | #echo "[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup" >> ~/.vnc/xstartup 266 | #echo "[ -r $(HOME)/.Xresources ] && xrdb $(HOME)/.Xresources" >> ~/.vnc/xstartup 267 | echo "x-window-manager &" >> ~/.vnc/xstartup 268 | chmod u+x ~/.vnc/xstartup 269 | #create service 270 | sudo systemctl enable tigervncserver@:1.service 271 | sudo systemctl start tigervncserver@:1.service 272 | sudo systemctl status tigervncserver@:1.service 273 | 274 | 275 | 276 | 277 | syncthing: 278 | curl -s https://syncthing.net/release-key.txt | sudo apt-key add - 279 | echo "deb https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list 280 | sudo apt-get update 281 | sudo apt-get install syncthing 282 | sudo systemctl enable syncthing@"$$USER".service 283 | sudo systemctl start syncthing@"$$USER".service 284 | 285 | #Optional software, which can be installed separately, e.g. "sudo make joplin" will install joplin 286 | 287 | #Joplin is note taking app. This version is command line driven and can be connected to Dropbox for notes storage. It has desktop and mobile flavors. Useful for storing lists of objects to image etc. 288 | joplin: 289 | sudo apt install -y npm 290 | NPM_CONFIG_PREFIX=~/.joplin-bin npm install -g joplin 291 | sudo ln -s ~/.joplin-bin/bin/joplin /usr/bin/joplin 292 | 293 | arduino: 294 | wget https://downloads.arduino.cc/arduino-1.8.19-linuxaarch64.tar.xz 295 | xz -d arduino-1.8.19-linuxaarch64.tar.xz 296 | tar xvf arduino-1.8.19-linuxaarch64.tar 297 | sudo mv arduino-1.8.19 /opt 298 | sudo /opt/arduino-1.8.19/install.sh 299 | rm arduino-1.8.19-linuxaarch64.tar 300 | 301 | 302 | 303 | swap: 304 | sudo mkdir /swap 305 | sudo truncate -s 0 /swap/swapfile 306 | sudo chattr +C /swap/swapfile 307 | sudo fallocate -l 2G /swap/swapfile 308 | sudo chmod 0600 /swap/swapfile 309 | sudo mkswap /swap/swapfile 310 | sudo swapon /swap/swapfile 311 | sudo sh -c "echo '/swap/swapfile swap swap defaults 0 0' >> /etc/fstab" 312 | 313 | swap_ext4: 314 | sudo mkdir /swap 315 | sudo fallocate -l 2G /swap/swapfile 316 | sudo chmod 0600 /swap/swapfile 317 | sudo mkswap /swap/swapfile 318 | sudo swapon /swap/swapfile 319 | sudo sh -c "echo '/swap/swapfile swap swap defaults 0 0' >> /etc/fstab" 320 | 321 | libraw: 322 | sudo apt -y install git build-essential autoconf libtool 323 | mkdir -p ~/source 324 | cd ~/source && git clone https://github.com/LibRaw/LibRaw.git && cd LibRaw && autoreconf --install && ./configure && make 325 | cd ~/source && git clone https://github.com/pchev/libpasraw.git && cd libpasraw/raw && make -f Makefile.dev && cp libpasraw.so.1.1 ~/source/LibRaw/lib/.libs && ln -s ~/source/LibRaw/lib/.libs/libpasraw.so.1.1 ~/source/LibRaw/lib/.libs/libpasraw.so.1 326 | echo "export LD_LIBRARY_PATH=~/source/LibRaw/lib/.libs && ccdciel" > ~/ccdciel.sh 327 | chmod 777 ~/ccdciel.sh 328 | 329 | 330 | build_kstars: 331 | sudo apt -y install build-essential cmake git libeigen3-dev libcfitsio-dev zlib1g-dev libindi-dev extra-cmake-modules libkf5plotting-dev libqt5svg5-dev libkf5xmlgui-dev libkf5kio-dev kinit-dev libkf5newstuff-dev kdoctools-dev libkf5notifications-dev qtdeclarative5-dev libkf5crash-dev gettext libnova-dev libgsl-dev libraw-dev libkf5notifyconfig-dev wcslib-dev libqt5websockets5-dev xplanet xplanet-images qt5keychain-dev libsecret-1-dev breeze-icon-theme 332 | #mkdir -p ~/Projects/build/kstars && cd ~/Projects && git clone git://anongit.kde.org/kstars.git 333 | cd ~/Projects/build/kstars && cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Debug ~/Projects/kstars && make 334 | --------------------------------------------------------------------------------