Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/devducks/astroarch

ArchLinux for astrophotography - made for raspberrypis, can run also on x64 machines
https://github.com/devducks/astroarch

aarch64 arch-linux archlinux archlinux-arm arm64 astronomy astrophotography ekos kstars linux pi4 pi5 raspberry raspberry-pi raspberry-pi-4 raspberry-pi-5

Last synced: 6 days ago
JSON representation

ArchLinux for astrophotography - made for raspberrypis, can run also on x64 machines

Awesome Lists containing this project

README

        

# Welcome to AstroArch! Astrophotography on ArchLinux for Raspberry Pi, PC and mini PC (works also on Manjaro and all Arch derived distros)

[![Discord chat][discord-badge]][discord-url] <= Join us on discord!

[discord-badge]: https://img.shields.io/discord/1100468635086106706?logo=discord&style=flat-square
[discord-url]: https://discord.gg/uJEQCZKBT8

![astroarch](https://github.com/devDucks/astroarch/assets/4163222/d26c8d0b-a5ad-404b-8c2d-ef0a04f2f19a)

Please find below some (hopefully) useful instructions, if you are here instead because you want to know how you can build this image from scratch, see [this](https://github.com/MattBlack85/astroarch/blob/main/BUILD.md)
- [Quick video intro](#quick-video-intro-to-astroarch)
- [What Raspberry is supported?](#what-raspberry-version-is-supported)
- [Download](#download)
- [Flash the image to SD](#flash-the-img-to-an-sd)
- [On first boot - things to know](#first-boot)
- [Connecting via noVNC (browser)](#connecting-via-browser-novnc)
- [Connecting via VNC client (this is the preferred way)](#connecting-via-vnc-client)
- [How can I use a raspberry camera?](#how-can-i-use-a-raspberry-camera)
- [How can I boot from USB/SDD?](#boot-from-external-disk-usb-hdd-ssd-nvme)
- [Kstars hours is not correct, how can I fix it?](#set-timezone)
- [What are the passwords for the user and the hotspot?](#passwords)
- [Protect VNC with a password](#how-to-protect-vnc-with-password)
- [Useful commands](#useful-commands)
- [List of available software](#software-available)
- [How can I add a RTC to AstroArch?](#how-to-add-a-rtc)
- [How to make a GPS dongle working?](#using-a-gps-dongle)
- [How to enable bluetooth?](#how-to-enable-bluetooth)
- [How to enable an FTP server?](#how-to-enable-FTP)
- [Where can I find more packages?](#where-to-find-more-pacakges)
- [How can I install Python packages?](#how-to-install-python-packages)
- [reporting problems](#reporting-issues)
- [For PC/mini PC running an ArchLinux derived distro (Manjaro, ArcoLinux, etc.)](#use-only-the-astro-packages-mantained-for-astroarch-on-pc-and-mini-pc)

# What Raspberry version is supported?
AstroArch runs on any raspberry capable to run aarch64 OS, this means `Raspberry Pi 4` and of course `Raspberry Pi 5`

# Download
Please use this link to download the latest astroarch gzipped img file => https://drive.google.com/file/d/1S4lGyRT1soCdO8QAUk5gmDEXj6T2_b2g/view

# Flash the img to an SD
If you prefer a GUI, use [balenaHetcher](https://www.balena.io/etcher/) otherwise you can use the unix `dd` to flash it, and if you are using `dd` I think
there is nothing I shall explain to you :)

# First boot
After you burned the .img file to your SD, you _should_ be able to reach astroarch via VNC, however if you don't see the desktop or you can't connect to it
this likely means that unfortunately your raspberry pi rev cannot boot the image. In this case please plug a monitor and report here the output!
Once you are logged in the first thing you should do is update the system, open the terminal and type `update-astroarch` command

# Set timezone
Do not forget to set the right timezone! to do so run `sudo timedatectl set-timezone Foo/Bar` where Foo/Bar is something like `Europe/Rome`

# Passwords
To save you some time, here the default password you will need for AstroArch:
- the user password for `astronaut` (which is the user used to login or for ssh) is `astro`
- the password for the `AstroArch-XXXXXXX` WiFi hotspot is `astronomy`

# How to protect VNC with password
If you want to add more security to your installation (or maybe you are at a starparty with more users running AstroArch), you may want to add a password to VNC (by default there is no password).
To do so first set a password running `sudo vncpasswd` and after that edit `/etc/systemd/system/x0vncserver.service` changing the ExecStart line from this

```
ExecStart=x0vncserver -display :0 -SecurityTypes None
```

to this

```
ExecStart=x0vncserver -display:0 -rfbauth /root/.vnc/passwd
```

Reboot and now you should be prompted to input a password when connecting via VNC

# How can I use a raspberry camera
AstroArch finally supports raspberry cameras via indi pylibcamera, to install it and having fun with it just run `sudo pacman -S indi-pylibcamera`

# Use only the astro packages mantained for AstroArch on PC and mini PC
If you have an x64 distro based on ArchLinux on your PC and you just want to access the packages I mantain (kstas, phd2, stellarsolver, indi, indi libs and drivers) add my repo to your pacman.conf file (under /etc/pacman.conf) **before** the [core] section, the repo looks like the following
```
[astromatto]
SigLevel = Optional TrustAll
Server = http://astroarch.astromatto.com:9000/$arch
```

after that run `sudo pacman -Sy && sudo pacman -S kstars phd2 indi-3rdparty-drivers stellarsolver`

# Useful commands
The followings are some useful commands that you can run from the terminal so you don't have to deal with complicated stuff by yourself if you don't want to:
- `update-astroarch` => this command will update system packages (including kstars, indi, etc. if there are new versions) and will pull any fix for astroarch itself, additionally will update the astroarch configuration that may bring in more commands etc.
- `astro-rollback-indi` => rollback automatically indi to the previous version
- `astro-rollback-kstars` => rollback automatically indi to the previous version
- `astro-rollback-full` => rollback automatically indi and kstars to the previous version
- `use-astro-bleeding-edge` => install bleeding edge packages for Kstars and INDI
- `use-astro-stable` => install stable packages for Kstars and INDI

# Connecting via browser (noVNC)
By default `AstroArch` will start a hostpot called `AstroArch`, to connect to that WiFi network use the password `astronomy`

noVNC is installed and it will start by default, if your pi is wired to your network you can connect to it with the follwing methods:
- **http://astroarch.local:8080/vnc.html**
- if the previous method doesn't work, find your raspberry pi IP, connect to it through your browser typing `http://RASPBERRY_IP:8080/vnc.html`

otherwise, if you want to connect to its hotspot, find the WiFi network `AstroArch` (the pass is `astronomy`) and type in your browser `http://10.42.0.1:8080/vnc.html`

Welcome to astro arch!

# Connecting via VNC client
If you trust me, this should be always the preferred way to connect usig VNC. noVNC goes through the browser and is less fluid and performant than a real VNC client.
You can use whatever VNC client you prefer, there should be no issue.

The address is `astroarch.local` (or the IP if you prefer) and the port is 5900

Few VNC client suggestions (work an all platforms):
- TigerVNC (https://tigervnc.org/)
- RealVNC (https://www.realvnc.com/en/)

# Adding swap
By default astroarch don't have swap, for prevent issues about memory space you can add a swap file and enable it, we will set swappiness to 10 don't use swap file if RAM space is ok.
In this example we make a 2GB swapfile
```
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo echo "vm.swappiness = 10" | sudo tee -a /etc/sysctl.d/99-swappiness.conf
```

Check swappiness
```
$ cat /proc/sys/vm/swappiness
10
```
Check if Swap is enabled
```
free -h
```
Output should be something like this on Swap row :
```
$ free -h
total used free shared buff/cache available
Mem: 3.7Gi 1.4Gi 1.1Gi 88Mi 1.3Gi 2.3Gi
Swap: 2.0Gi 0B 2.0Gi
```
Make permanent swapfile on system
```
$ sudo echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
```

# Boot from external disk (USB, HDD, SSD, NVME)
If you want to use an alternative media to boot AstroArch, just flash the image to your support and it will work out of the box for USB and SSDs! No special steps are required

If you have a NVMe there are some additional steps to be able to boot from it:
- install rpi-eeprom with `sudo pacman -S rpi5-eeprom` (or rpi4-eeprom if you have a rasberry4)
- be sure to run the latest eeprom firmware `sudo rpi-eeprom-update -a`
- *be sure to read this table https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#boot_order-fields*
- decide the boot order for your raspberry, bear in mind that the priority goes right to left, so for example, if you want your boot
to be something like NVMe first, then USB then SD card the values to put in the `BOOT_ORDER` field would be 641 but since it's reversed we should put 146
with a final value (put always the f) of `0xf146`
- create a new file with the following command
```sh
cat>eeprom.conf<