Skip to content

benjaminvanrenterghem/screenly-ose

 
 

Repository files navigation

Anthias - Digital Signage for the Raspberry Pi

Anthias Logo

Screenly OSE is now known as Anthias

To clear up confusion between Screenly and Anthias, we have decided to rename Screenly OSE to Anthias. More details can be found in this blog post. The renaming process is now under way, and over the coming months, Anthias will receive a face lift and the love it deserves.

Want to help Anthias thrive? Support us using GitHub Sponsor.

Star History

Star History Chart

Disk images

The quickest way to get started is to use Raspberry Pi Imager, where you can find Anthias under Other specific-purpose OS. Alternatively, you can find our pre-built disk images (powered by Balena Hub) here.

Do however note that that we are still in the process of knocking out some bugs. You can track the known issues here.

Installing on Raspbian/Raspberry Pi OS

The tl;dr for on Raspberry Pi OS Bullseye Lite is:

$ bash <(curl -sL https://install-anthias.srly.io)

This installation will take 15 minutes to several hours, depending on variables such as:

  • The Raspberry Pi hardware version
  • The SD card
  • The internet connection

During ideal conditions (Raspberry Pi 3 Model B+, class 10 SD card and fast internet connection), the installation normally takes 15-30 minutes. On a Raspberry Pi Zero or Raspberry Pi Model B with a class 4 SD card, the installation will take hours. As such, it is usually a lot faster to use the provided disk images.

Installing with Balena

While you can deploy to your own Balena fleet, the easiest way to deploy using Balena OpenFleets.

Quick links

Anthias works on all Raspberry Pi versions, including Raspberry Pi Zero, Raspberry Pi 3 Model B, and Raspberry Pi 4 Model B.

Dockerized Development Environment

To simplify development of the server module of Anthias, we've created a Docker container. This is intended to run on your local machine with the Anthias repository mounted as a volume.

Do note that Anthias is using Docker's buildx for the image builds. This is used both for cross compilation as well as for local caching. You might need to run docker buildx create --use first.

Assuming you're in the source code repository, simply run:

 ./bin/build_containers.sh
$ docker compose \
    -f docker-compose.dev.yml up

Building Containers Locally

Make sure that you have buildx installed and that you have run docker buildx create --use before you do the following:

./bin/build_containers.sh

Skipping Specific Services

Say that you would like to skip building the anthias-viewer and anthias-nginx services. Just run the following:

SKIP_VIEWER=1 SKIP_NGINX=1 ./bin/build_containers.sh

Generating Only Dockerfiles

If you'd like to just generate the Dockerfiles from the templates provided inside the docker/ directory, run the following:

DOCKERFILES_ONLY=1 ./bin_build_containers.sh

Running the Unit Tests

Start the containers.

$ ./bin/build_containers.sh
$ docker compose \
    -f docker-compose.test.yml up -d

Run the unit tests.

$ ./bin/build_containers.sh
$ docker compose \
    -f docker-compose.test.yml \
    exec -T anthias-test bash ./bin/prepare_test_environment.sh -s
$ docker-compose \
    -f docker-compose.test.yml \
    exec -T anthias-test nosetests -v -a '!fixme'

About

Screenly OSE | Digital Signage for the Raspberry Pi

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • CSS 31.4%
  • Python 25.9%
  • JavaScript 15.0%
  • HTML 12.1%
  • Shell 6.0%
  • CoffeeScript 5.0%
  • Other 4.6%