calibre server, https, selfsigned ssl

these two sites are very useful…

https://www.digitalocean.com/community/tutorials/how-to-create-a-self-signed-ssl-certificate-for-apache-in-ubuntu-18-04

https://www.digitalocean.com/community/tutorials/how-to-create-a-calibre-ebook-server-on-ubuntu-18-04

redirect incoming traffic to a service running at an internal port
–> use proxy option..

https://serverfault.com/questions/977894/redirecting-https-url-to-service-running-on-a-different-port

for example, if you have a ebook server running internal port 70 then,

setup proxy as ‘/ebook/’ ‘http://localhost:70″
and access this from outside by typing https://external_ip:port/ebook/

using this trick, you can link services as many as you want.

wake on lan: ubuntu20

https://necromuralist.github.io/posts/enabling-wake-on-lan/

ubuntu 20 vnc connect after logout not working

this solution seems correct

https://askubuntu.com/questions/1033274/ubuntu-18-04-connect-to-login-screen-over-vnc

switch the display manager to lightdm, and then bind vnc with x11vnc

Ubuntu 18.04 switched from LightDM to GDM3. Connecting to the login screen with VNC while using GDM3 is currently not possible. The easiest way to get this VNC functionality back is to simply switch back from GDM3 to LightDM.

LightDM is still being actively developed and used by many Linux distributions including some other flavors of Ubuntu. So no worries there.

Install LightDM

apt install lightdm

Should you for some reason come to regret switching to LightDM:

dpkg-reconfigure gdm3

Once you have LightDM installed and configured as your default greeter..

Install x11vnc from packages

apt install x11vnc

Create the file /etc/systemd/system/x11vnc.service

# Description: Custom Service Unit file
# File: /etc/systemd/system/x11vnc.service
[Unit]
Description="x11vnc"
Requires=display-manager.service
After=display-manager.service

[Service]
ExecStart=/usr/bin/x11vnc -loop -nopw -xkb -repeat -noxrecord -noxfixes -noxdamage -forever -rfbport 5900 -display :0 -auth guess
ExecStop=/usr/bin/killall x11vnc
Restart=on-failure
RestartSec=2

[Install]
WantedBy=multi-user.target

Enable the x11vnc service

 systemctl enable x11vnc.service

This assumes screen :0 represents your monitor and binds x11vnc to that monitor instead of a session. If you do not have a monitor (headless) you can install the xserver-xorg-video-dummy package and use the dummy driver to configure a virtual :0 screen for you.

Another post

See how it looks

Useful Arduino Projects

GPS low power consumption

https://create.arduino.cc/projecthub/JeremyCook/gps-led-bike-speedometer-c8f956

arduino nema17 motor, a4988 driver

https://lastminuteengineers.com/a4988-stepper-motor-driver-arduino-tutorial/

General purpose

https://lastminuteengineers.com/