Star Trek Picard LCARS Theme for Pi-hole

:tada: I've just released v1.0 of my Star Trek Picard inspired LCARS Theme for Pi-hole! :tada:

Theme written from scratch and based mostly on the 25th century LCARS from Picard TV show. Few animations and easter eggs included :wink:

ENJOY! :vulcan_salute:

(This is my second theme. First one, also on my GH, was just a heavily tweaked version of rdwebdesign's (cannot mention) original blue theme. )

8 Likes

Wow, looks great!

I'm not sure how the setup of nesting a git repo inside of our interface git repo will work when a user needs to run pihole -up though.

I was thinking about changing the update process to automatically rebase any local changes to keep things like customizations on update. Of course this all will likely change with version 6.

Would you be open to including this in the Pi-hole repo as an additional theme?

1 Like

:astonished:
That would be my pleasure!
But that would required more extensive testing and probably some code review. The code was written for modern browsers mainly, so on older devices could be some visual imperfections or bugs.

(There are some more things I have in mind that wanted to do/try, but I had to draw a line somewhere and relase something :laughing: )

1 Like

That's okay, it would be a users choice to select the theme so they'd need to be sure that they could use the theme before selecting it.

Ok. sounds reasonable :+1:

Let me know what I can do (PR to AdminLTE?) when or if it's gonna be relevant. I pressume that there will be some discussion.

Of course I would keep maintaining the theme. In the meantime I'll try to polish the code a bit more :slight_smile:

It looks very smart! Is it possible to keep the Pi-hole LCARS theme (Settings > Web interface > Theme and Layout > Star Trek LCARS theme (dark)) and have both your themes available too? Or does one have to choose one of your two themes, and then that replaces the Pi-hole original LCARS theme? Apologies if I've misunderstood what "[i] This theme replaces the original blue LCARS theme" is saying.

The "installation" described in the README is to replace the lcars.css file in your pi-hole. You could rename the file and replace another one of the available themes there, but you cannot add a new one.

Actually, it's possible to add a new theme editing a file, but this change will be lost on updates if made manually.

This is the file:

Adding a new line with $available_themes['lcars_picard'] = array( ... details ... ) will allow a new theme.

2 Likes

I found this file as well, but I wanted to keep the installation straightforward and relatively simple.

I was always struck by how often an issue somewhere on the ship would cause the "console to overload" and explode, sending the poor operator halfway across the bridge. Using this theme, I hope that we're safe in the event of any DNS errors! Maybe a hardcore = enabled option.

1 Like

The way to go would be a PR to adminlte. We just need to decide if this should target the current v5 version (based on development branch) or target v6 (development-v6 branch).

2 Likes

Hahahaha, I was watching DS9 last night, the episode where the Defiant takes on the Klingon armada and that's exactly what happens. Defiant takes a phaser blast and it's the fire control panel that blows up. Seems like some bad engineering there.

1 Like

FYI, I've updated the theme. There are few new improvements and few bug fixes.
Either tomorrow or Monday I'll make the PR.

Changes in v1.1.0
  • NEW - DOMAINS page visual tweaks
  • NEW - updated danger area on SYSTEM page with new animations
  • NEW - Status_panel-47a updated with colors reflecting the actual state (active/disabled)
  • NEW - DISABLE BLOCKING / CUSTOM TIME modal window styled
  • FIX - DOMAINS page - checkbox labels on one line
  • FIX - Show X entries vertical align
  • FIX - Pagination margins
  • FIX - In some dataTables added rounded corners to buttons (= not visually connected to other elements)

Modal window

1 Like

Last update :laughing:

Changes in v1.3.0
  • NEW - Completely redesigned much cooler looking FOOTER
  • FIX - Dynamic border-radius of the main sidebar through custom property

Question about PR

To which branch I should make the PR?
devel or development-v6?
I presume that in v6 there are much more changes and there is high probability that something will be broken ...

Question about development

Let's say I want to prepare the theme for the v6. How I can run the DEV version? :thinking: I searched throught the documentation, but there is no mention of dev enviroment, only contributions.
I found some answers with the help of ChatGPT and it looks ok, just want to be sure that I'm on the right track. Thanks.

Dev version installation
git clone --depth 1 --branch development https://github.com/pi-hole/pi-hole.git Pi-hole
cd Pi-hole/automated install/
sudo bash basic-install.sh

or

pip install git+https://github.com/pi-hole/pi-hole.git@development
Docker dev version installation
docker pull pihole/pihole:development

docker volume create pihole_app
docker volume create dns_config
docker run -d \
  --name pihole \
  -p 80:80 \
  -p 443:443 \
  -v pihole_app:/etc/pihole \
  -v dns_config:/etc/dnsmasq.d \
  -e ServerIP=<your_server_ip> \
  -e TZ=<your_timezone> \
  pihole/pihole:development

On docker, you can use the pihole/pihole:development-v6 tag.

1 Like

As this seems (almost?) ready to be shipped we discussed internally that your theme could be included still into v5. v6 will certainly break some things and there is no release ETA yet - there is no need to wait if your theme is ready. Just be aware that we will ask you to adjust to v6 at some point to keep it included.

So please base on and target devel branch

1 Like

Thanks! Will do.

The theme is ready. I went through many times and I think that I covered everything I possibly could (base visual, responsiveness, tables, popups, alerts, messages, overheating warning, updates available, submenus, pickers, etc...). So far it worked well for me and I didn't have any complaints/issues reported. But of course edge cases exists ...

Just be aware that we will ask you to adjust to v6 at some point to keep it included.

:+1: I'm planning to keep it up to date. That's why I was asking about the development process. I have to try to run it in the Docker to have a separate version. As for this moment I run it on Raspberry and I'm using custom script in the browser to inject the local styles directly.

Firstly, I want to express my appreciation for the time and effort you've dedicated to creating this fantastic theme. I was so impressed that I took the initiative to share it on Reddit. The response has been overwhelmingly positive, and it's evident that many people love your work as much as I do. I've even shared the Next Generation theme on Reddit!

I do have a couple of questions, however:

  1. Is there a way to set the theme to auto-update?
  2. If not, could you guide me on the proper method for updating the theme? At the moment, I'm deleting the current installation and then reinstalling it. The issue with this approach is that I can't easily tell which version of the theme I currently have installed.

Thank you once again for your fantastic work!

1 Like

Thank you for your kind words!

  1. You could theoretically write some custom script that will be periodically checking the repo somehow ... :thinking:
  2. You can check the version by opening the CSS file:
/*
	- Document: Pi-hole LCARS Star Trek Picard Theme
	- Version:  1.3.2
    ..........

Anyway, thanks to the great people here, the Picard theme will be additional official theme of Pi-hole with the next update :wink: (I'm just fighting now with GitHub to make a proper pull request.)

1 Like

Hi @MichalSvatos
I want to extend my sincere gratitude for the theme you made; it's aesthetically pleasing, and the animations are particularly engaging. And don't want to be the person picking the little things and complain. However, today I've stumbled upon a situation that seems to hint at a possible conflict with my PiOLED by Adafruit.

I must admit, I'm no expert in coding or deciphering error messages, but since applying this theme. I noticed that the displaying isn't showing anything.

I tried to run the code sudo i2cdetect -y 1 and everything was fine. But upon running the code sudo python3 stats.py I'm getting error messages, and my PiOLED is unable to display anything. I am reaching out with hope that you, or someone proficient in this area, could provide some clarity or a remedy to this issue. It would be a great disappointment to revert to the original LCARS themeβ€”while it worked fine, I have grown quite fond of the current one.

To give you a better understanding, I've followed the Adafruit guide meticulously and have attached the stats.py so that it displays on my PiOLED. But upon running the code sudo python3 /home/pi/stats.py & , I am encountering an error message that reads:

File "/home/pi/stats.py", line 116, in
DNSQUERIES = data['dns_queries_today']
TypeError: list indices must be integers or slices, not str

This error message has left me in a bind, and I'm quite unsure about the way forward. If there are any insights or solutions to address this issue and resume the functionality of the PiOLED with the preferred theme intact, it would be immensely appreciated.