https://github.com/Quill-OS/quill logo
Per window eink settings
# pine-dev
s
So
I pushed everything
seems to work at first glance
To make it work:
clean rootfs
rq -c rootfs
rq -g rootfs
then compile everything
rq -a -i -b rootfs --ignore-build-items squeekboard xournalpp
then put it on device, update everything from skel to home
obv pull everything
in ⁨`.config/eink_window_settings/config.ron`⁩ put:
⁨``` [ ( app_id: "Alacritty", settings: Normal(Y2(Tresholding, DisableFastDrawing)), ), ( app_id: "org.freedesktop.Xwayland", settings: Normal(Y1(Tresholding, _12)), ), ( app_id: "obsidian", settings: Normal(Y4(FastDrawing(( delay: 25, )))), ), ( app_id: "org.kde.okular", settings: Normal(Y4(FastDrawing(( delay: 25, )))), ), ( app_id: "org.gnome.Rhythmbox3", settings: Normal(Y2(Dithering(Bayer), DisableFastDrawing)), ), ( app_id: "org.mozilla.firefox", settings: Fast(Bayer), ), ( app_id: "org.kde.falkon", settings: Fast(Bayer), ), ( app_id: "anki", settings: Normal(Y2(Tresholding, FastDrawing(( delay: 25, )))), ), ] ```⁩
that's it
im waiting for bugs to solve then i can finish this
things broken / missing / to fix for now (my personal list): - - gui configurator is not shipped to device - move pinenote-service to log library - - gui theming and default zoom factor - if no app is focused, restore defaults
I hope I pushed everything
t
thanks, i will have a look at it
I think you forgot qoms repo ⁨``` [2026-02-02T03:23:46Z INFO quillstrap::common::commands] Executing "cargo zigbuild --release --target aarch64-unknown-linux-gnu.2.41" in shell error: failed to get
qoms_lib
as a dependency of package
pinenote-service v1.0.1 (/workspaces/quillstrap/build_all/os/low/pinenote_service)
Caused by: failed to load source for dependency
qoms_lib
Caused by: Unable to update /workspaces/quillstrap/build_all/os/low/qoms/qoms_lib Caused by: failed to read
/workspaces/quillstrap/build_all/os/low/qoms/qoms_lib/Cargo.toml
Caused by: No such file or directory (os error 2) ```⁩
anyways, for me, nothing works currently
as far as per-window settings go
data provider cant find qoms socket
also, idk if its just me, but ive been experiencing lately weird things, like not being able to close the keyboard after having opened it, or not being able to open quick settings menu even if i see visual feedback that i have clicked on the bqar
s
nothing works because nothing compiles lol
I also did not push niri
now everything is pushed I think, try again
thats eww being stupid if cpu usage is a big higher, add it to todo, maybe a pull request is somewhere to fix this
t
Thanks, will do
I tried briefly earlier on before going to school, seems to work now, thanks
s
it needs a lot of testing
t
Well, yes, but it did something already so it's better than yesterday lol
is there a way to test the config file for syntax errors?
my thing doesnt work anymore
s
im reworking everything
t
Copy code
[
    (
        app_id: "Alacritty",
        settings: Normal(Y2(Tresholding)),
    ),
    (
        app_id: "org.freedesktop.Xwayland",
        settings: Normal(Y1(Tresholding, _12)),
    ),
    (
        app_id: "Com.github.xournalpp.xournalpp",
        settings: Normal(Y1(Tresholding, _12)),
    ),
    (
        app_id: "obsidian",
        settings: Normal(Y4(FastDrawing((
            delay: 25,
        )))),
    ),
    (
        app_id: "org.kde.okular",
        settings: Normal(Y4(FastDrawing((
            delay: 25,
        )))),
    ),
    (
        app_id: "org.gnome.Rhythmbox3",
        settings: Normal(Y2(Dithering(Bayer), DisableFastDrawing)),
    ),
    (
        app_id: "org.mozilla.firefox",
        settings: Fast(Bayer),
    ),
    (
        app_id: "org.kde.falkon",
        settings: Fast(Bayer),
    ),
    (
        app_id: "anki",
        settings: Normal(Y2(Tresholding, FastDrawing((
            delay: 25,
        )))),
    ),
]
s
which will be error proof
as in, it will overwirte things to a default one if you do something bad ;p
t
ok, but where is the logging to see if it eats the config correctly?
i set my xournal to y1 and screen is still y2
s
pinenote-service
t
ok, journalctl?
s
somewhere yes
t
Copy code
nicolas@pinenote ~/O/LaTeX> sudo systemctl status pinenote
Unit pinenote.service could not be found.
nicolas@pinenote ~/O/LaTeX [4]> sudo systemctl status pinenote-service
Unit pinenote-service.service could not be found.
nicolas@pinenote ~/O/LaTeX [4]>
Copy code
nicolas@pinenote ~/O/LaTeX [4]> ls /etc/systemd/user/pinenote.service 
/etc/systemd/user/pinenote.service
nicolas@pinenote ~/O/LaTeX>
i cant understand systemd
s
--user
t
Hmm, thank
well, fwiw, nothing works for me anymore and this is my config
Copy code
[
    (
        app_id: "Alacritty",
        settings: Normal(Y2(Tresholding)),
    ),
    (
        app_id: "org.freedesktop.Xwayland",
        settings: Normal(Y1(Tresholding, _12)),
    ),
    (
        app_id: "Com.github.xournalpp.xournalpp",
        settings: Normal(Y1(Tresholding, _12)),
    ),
]
idk too much what i did to make it break
s
gui will be shipped in less than 30 minutes
t
no worries,
was just sharing
s
something broken another 30 minutes
I think I pushed everything
seems to work
update the same way as before
as everything changed
t
i will test now
thansk
what did you change in a tldr
mostly gui and fixes and renames and moves
t
i dont think to clean rootfs again right?
just rq -a -i -b should be enough?
s
y
t
rootfs compressing
well, nothing works for me
s
pinenote-service logs
from serial
or whatever from where
t
hm, works now
saved new config
i dont see what was wrong with that, but welp
s
nope, it sets the config if anything is wrong
do you have now my config
t
well, it didnt set it before i opened the settings window
and clicked save , probably
s
did it open with my config
t
y
s
reboot
dont log in
decrypt
remove .config/eink* window settings there (probably 2 dirs)
then encrypt
connect serial
then log in
gather logs that show from pinenote-service
its spamming this
Copy code
[  134.547724] pinenote-service[1037]: Inotify failed for path: /home/nicolas/.config/eink-window-settings/, error is: Os { code: 2, kind: NotFound, message: "No such file or directory" }
s
doesn't matter
what is your latest commit for pinenote-service
commit id
check in your local repo not on github
t
Copy code
commit 9611516119a2a97055f08be5dafaaf9ef0c0275d (HEAD -> main, origin/main, origin/HEAD)
Author: Szybet <53944559+Szybet@users.noreply.github.com>
Date:   Mon Feb 2 22:15:06 2026 +0000

    fix
s
9611516119a2a97055f08be5dafaaf9ef0c0275d
matches
t
so is it fine or not?
s
yes, no
fix in a minute
t
hm, ok
sure
s
pushed pinenote-service
you can build it and deploy it
then reboot
t
thanks
doing now
what is username2?
s
different then username1
as in ⁨`username`⁩
i overcomplicated the protection for logouts etc, but works well
t
ok maybe you can explain this in a detailed way to me someday
i would like to understand
s
until i changed the settings logic to be forced, so edge case
if we have time some day
and it will be "There is nothing to do, oh no"
t
1/1e1000000 chance of happening
its uploading now
what behavior should i expect
s
it should create the config
t
ok
it did create config
so good
maybe you could also rename Eink for eInk in egui like it is in the app name
otherwise, nice work
thanks
s
done
t
i just clicked "add" button
but had to click twice because i didnt realize it added to the bottom of the list
maybe better to scroll down the list when adding new thing
if its doable
idk about egui
s
yes but would require me to tinker in a macro library
so like too much effort for so less important thing
as in, other important things to do
t
yea i get it
s
so uh no for now
s
yea exactly
restarting the app fixes this, this is rare too
i think its a squeekboard issue
idk, feel free to debug it
t
a bit funny
"i will break after user enters 1 letter"
s
happened only one time for me, then never again
t
still breaks after relaunch
s
so tell me how to replicate this, then we can talk ;p
idk reboot then
t
ok
lets see
still breaks after reboot
and after 2nd relaunch after reboot
s
does backpace work for you tho?
t
y
it erases,well, the 1st letter
s
then it happened for me again then
t
systematically?
s
maybe if we dont mention it for 2 minutes it will go away :P?
idk try another keyboard
idk which others are there
we have this expression here for such things
s
nice
t
i can try plugging in real keyboard
s
nah
virtual keyboard
i will look into egui
t
well, with real keyboard at least it works without issue
s
i could use this and call it a day
consistency
s
hehe
t
you can have a look at wkeys
i had compiled it once
seemed to work to some extent
message has been deleted
@Szybet for me, it is impossible to set global window settings
when i click on "Per window settings->Off", i can click on many buttons but nothing happens, stays at y2
Copy code
[2026-02-03T02:53:12Z DEBUG quill_data_provider::eink] For key conversion_dithering the bool is: false
[2026-02-03T02:53:12Z DEBUG quill_data_provider::eink] For key redraw_fast_drawing the bool is: false
[2026-02-03T02:53:12Z DEBUG quill_data_provider::eink] For key redraw_disabled the bool is: true
[2026-02-03T02:53:12Z DEBUG quill_data_provider::eink_listener] Screen settings: EwwScreenConfig { window_settings: false, driver_normal: true, driver_fast: false, dithering_bayer: true, dithering_blue_noise16: false, dithering_blue_noise32: false, bitdepth_y1: false, bitdepth_y2: true, bitdepth_y4: false, conv_thresholding: false, thresholding_level_value: 39, conv_dithering: false, redraw_fastdrawing: false, redraw_level_value: 25, redraw_disablefastdrawing: true }

thread 'tokio-runtime-worker' (2043) panicked at src/eink.rs:152:9:
No conversion, what?
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
this happens when I click "Off"
s
Will check
renaming things with ctrl f was a bad idea
rebuild rootfs, updated eww
and copy from skel
t
Will do, thanks
well, for overlay, there is nice change to fast mode, but then when i get out of it, it stays in fast mode
i need to change windows or trigger something that will make fast mode go away
the other things work though, so thanks
s
it doesn't
is your cpu slow again
i will try something idk why it doesnt work for you
t
Idk,I can take video if needed
Did you try with no windows open?
s
uh
will you be able to test it if i push a fix in 5 minutes?
t
Well, I'm going to school, but once at school, yes
s
pushed
t
Ok, thanks
Will test
it seems to work now
2 Views