Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/Neurone/reMarkable

Customizations for reMarkable Paper Tablet
https://github.com/Neurone/reMarkable

customization linux remarkable remarkable-tablet remarkable2 splashscreen

Last synced: 25 days ago
JSON representation

Customizations for reMarkable Paper Tablet

Awesome Lists containing this project

README

        

# reMarkable

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`

## Automatically change your power off and suspend screens every 5 minutes

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.

```bash
/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.

### Manual installation

- Clone this repo

```bash
git clone [email protected]: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

```bash
scp -r reMarkable-customizations [email protected]:/home/root/temp-reMarkable-customizations
```

- Login into your reMarkable

```bash
❯ ssh [email protected]
[email protected]'s password:
reMarkable
╺━┓┏━╸┏━┓┏━┓ ┏━┓╻ ╻┏━╸┏━┓┏━┓
┏━┛┣╸ ┣┳┛┃ ┃ ┗━┓┃ ┃┃╺┓┣━┫┣┳┛
┗━╸┗━╸╹┗╸┗━┛ ┗━┛┗━┛┗━┛╹ ╹╹┗╸
reMarkable: ~/
```

- Create dedicated folders for your scripts and images

```bash
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

```bash
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

```bash
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

```bash
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

```bash
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

```bash
rm -rf /home/root/temp-reMarkable-customizations
```

- Enable service and timer

```bash
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

### Automatic installation

WIP :)

### Change the frequency of the updates

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.

### Troubleshooting

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.

```bash
❯ 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.

```bash
❯ 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.
```