Bloggen min

Litt om min daglige koding

Screenly OSE and Cookies

Jeg jobber en god del med screenly for tiden. Installert på flere Raspberry pi og omkonfigurert disse ved hjelp av ansible og satt opp egen provisjonering av disse. Det som ikke fungerte helt av seg selv var å gå inn på websider som er lukket bak pålogging (forståelig nok). En måte å omgå sånt er å lagre en session-cookie som gjør at man ser ut å være brukeren man hentet cookien fra etter at vedkommende hadde logget seg på. Poenget er at Screenly ikke automatisk leser inn slike cookies i uzbl browseren som benyttes fordi denne leser configurasjon fra stdin slik at nettleseren kan få kommandoer på hva den skal gjøre. Den konfigurasjonen som ligger inne i Screenly OSE må endres for at man skal få lest inn cookies ved oppstart av uzbl nettleseren.

Legg inn cookie

i ~pi/.local/share/uzbl/cookies.txt legger man cookien man ønsker å bruke i samme format som de som ligger der.

i ~pi/.config/uzbl/config-screenly legger man noe sånn som dette:

1
2
sync_spawn_exec /usr/share/uzbl/examples/data/scripts/load_cookies.sh
sync_spawn_exec /usr/share/uzbl/examples/data/scripts/load_cookies.sh /home/pi/.local/share/uzbl/session-cookies.txt

Hvis man ønsker litt fancy status-bar i tillegg så kan man sette dette:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
set show_status = 0
set ssl_verify = 0
set status_background = #303030

set modcmd_style      = weight="bold" foreground="red"
set keycmd_style      = weight="light" foreground="red"
set prompt_style      = foreground="grey"
set cursor_style      = underline="single"
set completion_style  = foreground="green"
set hint_style        = weight="bold"

set mode_section      = <span background="khaki" foreground="black">[\@[\@mode_indicator]\@]</span>
set keycmd_section    = [<span \@prompt_style>\@[\@keycmd_prompt]\@</span><span \@modcmd_style>\@modcmd</span><span \@keycmd_style>\@keycmd</span><span \@completion_style>\@completion_list</span>]
set progress_section  = <span foreground="#606060">\@[\@progress.output]\@</span>
set scroll_section    = <span foreground="#606060">\@[\@scroll_message]\@</span>
set uri_section       = <span foreground="#99FF66">\@[\@uri]\@</span>
set name_section      = <span foreground="khaki">\@[\@NAME]\@</span>
set status_section    = <span foreground="orange">\@status_message</span>
set selected_section  = <span foreground="#606060">\@[\@SELECTED_URI]\@</span>

set download_section  = <span foreground="white">\@downloads</span>

set status_format       = <span font_family="monospace">@mode_section @keycmd_section @progress_section @name_section @status_section @scroll_section @selected_section @download_section</span>
set status_format_right = <span font_family="monospace"><span foreground="#666">uri:</span> @uri_section</span>

set title_format_long = \@keycmd_prompt \@raw_modcmd \@raw_keycmd \@TITLE - Uzbl browser <\@NAME> \@SELECTED_URI


# Progress bar config
# %d = done, %p = pending %c = percent done, %i = int done, %s = spinner,
# %t = percent pending, %o = int pending, %r = sprite scroll
set progress.width      = 8
set progress.format     = [%d>%p]%c
set progress.done       = =
set progress.pending    =