Customizations for reMarkable and reMarkable 2 Paper Tablet.
Scripts tested and working on version 2.0.x
, 2.1.x
, 2.11.x
and 3.4.x
After installing this script, every image in the following folders is eligible to be randomly selected every 5 minutes for the power off or the suspended screen, accordingly to the dedicated folder. The name of the files is not relevant.
/home/root/customization/images/poweroff
/home/root/customization/images/suspended
This repo comes with some beautiful default images. I'm sorry I cannot give credits for them, but I found them on Facebook long time ago and I can't find the author anymore. If you find the author, please send a PR to this repo.
Note about the suspend screen. Starting with version 2.11.x
and above (3.x
included), ReMarkable loads the suspend screen image during the startup only, so it does not hot load from the filesystem anymore: you need to restart the device to see the new randomly selected image. I will explore the possibility of reloading the interface in memory. I already found how to reload the entire UI, but I will apply this feature only if I can find a way to do it during the device's sleep time rather than when the user is actively using it.
- Clone this repo
git clone git@github.com:Neurone/reMarkable.git reMarkable-customizations
- Connect to your reMarkable via SSH (via USB or WiFi, change the IP accordingly) and copy this repo into a temp folder
scp -r reMarkable-customizations root@10.11.99.1:/home/root/temp-reMarkable-customizations
- Login into your reMarkable
❯ ssh root@10.11.99.1
root@10.11.99.1's password:
reMarkable
╺━┓┏━╸┏━┓┏━┓ ┏━┓╻ ╻┏━╸┏━┓┏━┓
┏━┛┣╸ ┣┳┛┃ ┃ ┗━┓┃ ┃┃╺┓┣━┫┣┳┛
┗━╸┗━╸╹┗╸┗━┛ ┗━┛┗━┛┗━┛╹ ╹╹┗╸
reMarkable: ~/
- Create dedicated folders for your scripts and images
mkdir -p /usr/share/remarkable/scripts
mkdir -p /home/root/customization/images/poweroff
mkdir -p /home/root/customization/images/suspended
- Copy the script into the correct folder and set it executable
cp /home/root/temp-reMarkable-customizations/scripts/random-screens/set-random-screens.sh /usr/share/remarkable/scripts/
chmod +x /usr/share/remarkable/scripts/set-random-screens.sh
- Copy some images under dedicated folders
cp /home/root/temp-reMarkable-customizations/images/poweroff/* /home/root/customization/images/poweroff
cp /home/root/temp-reMarkable-customizations/images/suspended/* /home/root/customization/images/suspended
- Copy service and timer in the correct folder
cp /home/root/temp-reMarkable-customizations/scripts/random-screens/random-screens.service /usr/lib/systemd/user/random-screens.service
cp /home/root/temp-reMarkable-customizations/scripts/random-screens/random-screens.timer /usr/lib/systemd/user/random-screens.timer
- Save original images, without overwriting previous original files
yes n | cp -i /usr/share/remarkable/poweroff.png /usr/share/remarkable/poweroff.original.png
yes n | cp -i /usr/share/remarkable/suspended.png /usr/share/remarkable/suspended.original.png
- You can now delete your temp folder
rm -rf /home/root/temp-reMarkable-customizations
- Enable service and timer
systemctl enable /usr/lib/systemd/user/random-screens.timer
systemctl enable /usr/lib/systemd/user/random-screens.service
-
Restart your reMarkable (random images are selected)
-
Restart again your reMarkable (previously selected random images are loaded)
-
You should now see your custom suspend and poweroff image in place
WIP :)
You can change the frequency of the refresh by modifying the value OnUnitActiveSec
inside the file /usr/lib/systemd/user/random-screens.timer
and then restarting your reMarkable.
To do some troubleshooting, you can use the following command to check the active timers. You should see random-screens.timer
listed there, without error.
❯ systemctl list-timers --all
NEXT LEFT LAST PASSED UNIT ACTIVATES
Tue 2023-06-20 19:44:06 UTC 2min 53s left Tue 2023-06-20 19:39:06 UTC 2min 6s ago random-screens.timer random-screens.service
Wed 2023-06-21 19:16:32 UTC 23h left Tue 2023-06-20 19:12:49 UTC 28min ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
2 timers listed.
You can also check the status of the random-screens
service. You should see it was activated within the last 5 minutes (or your custom set frequency) and without errors.
❯ systemctl status random-screens.service
● random-screens.service - Set random images for splash screens
Loaded: loaded (/usr/lib/systemd/user/random-screens.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Tue 2023-06-20 19:43:08 UTC; 38s ago
TriggeredBy: ● random-screens.timer
Process: 175 ExecStart=/usr/share/remarkable/scripts/set-random-screens.sh (code=exited, status=0/SUCCESS)
Main PID: 175 (code=exited, status=0/SUCCESS)
Jun 20 19:43:08 reMarkable systemd[1]: Started Set random images for splash screens.
Jun 20 19:43:08 reMarkable systemd[1]: random-screens.service: Succeeded.