journalctl -u micro
93 subscribers
2.19K photos
210 videos
287 files
1.45K links
Esperienze e consigli di uno sviluppatore tech−unenthusiast

creation — 2021-04-29
owner — @Microeinstein

networks
@sigma_hub Σ
@ageiroumena
Download Telegram
Dopo altro wrestling con adb forward / reverse (tra l'altro, solito tool che non si capisce mai dove sia installato), mi sono ricordato dell'esistenza di socat, uno swiss army knife che consente di connettere insieme qualsiasi tipo di socket in modo bidirezionale: TCP UDP IPV4 IPV6 FILE PIPE SOCK unix ...

Creando un secondo relay localhost sul mac del collega, l'emulatore è riuscito a connettersi tramite 10.0.2.2
socat \
tcp4-listen:5678,fork,reuseaddr \
tcp4:192.168.1.x:80


Riuscendo finalmente ad analizzare le richieste di rete, scopriamo che nel primo tentativo di login una delle chiamate API contiene nel body di risposta un json, corretto al 99.9% ...se non per una graffa di chiusura mancante
{
"status": "ok",
"results": { ...
}

Ma questa graffa, nella stessa chiamata del secondo tentativo, È PRESENTE.

To be continued.
1👏1
La risoluzione è stata decisamente meno entusiasmante.

Mi sono accorto che nel body oltre alla graffa finale mancante sono anche presenti spazio+newline iniziali extra, ma il Content-Length è identico
 
{
"status": "ok",
"results": { ...
}

Il codice PHP dell'API ha una cache di sessione che se disattivata fa comparire il problema ad ogni chiamata, questo spiega il successo delle successive chiamate.

Qualcosa durante il calcolo della risposta genera quegli spazi, inoltre il Content-Length è sicuramente forzato lato PHP prendendo la lunghezza della risposta reale — niente programmi di rete che inseriscono header vuoti, il rasoio di Occam va sempre considerato.

Facendo un po' di bisect con ob_start() + ob_get_clean() trovo il colpevole: uno spazio residuo dopo un tag di chiusura ?> di una personalizzazione del 2016...

Poi confermato con questo grep
grep -Pzrl '^\s+<\?php|\?>([ \t]+[\r\n]*|[\r\n]*[ \t]+)$' .

Più di 12h buttate per uno spazio
❤‍🔥1💔1😭1
Ho aperto per caso un server Discord ed ho trovato due cose pazzesche:
https://gitgud.io/wackyideas/aerothemeplasma/
This is a project which aims to recreate the look and feel of Windows 7 as much as possible on KDE Plasma, whilst adapting the design to fit in with modern features provided by KDE Plasma and Linux.

Ogni singolo screenshot è KDE
🤯1
https://github.com/angelbruni/geckium
Geckium is a Mozilla Firefox (115 - latest) CSS and JS modification that restores the look and feel of past Chromium (or Google Chrome) releases, spanning from 1.0 to 58, while also bringing Chromium Theme support to Firefox, bringing obscure prerelease content to the limelight and retrofitting new content into every design.
1
Il 14 ottobre finisce il supporto a Windows 10
Tuttavia con massgrave è possibile attivare gratis gli Extended Security Updates fino ad ottobre 2028, come pure aggiornare l'edizione ad IoT Enterprise LTSC il cui supporto termina a gennaio 2032

In ogni caso penso che a lavoro sarò costretto ad aggiornare a win11 o al massimo installare ubuntu
The Amphora of Great Intelligence (AGI)

By David Revoy. CC-BY-SA-4.0
🤯2👏1
Did you know that there’s a field of study of long-term nuclear waste warning messages, involving “linguists, archaeologists, anthropologists, materials scientists, science fiction writers, and futurists” with the goal of communicating the danger of nuclear materials to our far future descendants who might have lost the tech and any knowledge of it?

https://www.hopefulmons.com/p/we-rarely-lose-technology
(1126/1126) controllo dello spazio disponibile sul disco       100%

[...]
errore: failed to write to temporary file: /home/micro/.local/state/paru/devel.toml.tmp: Spazio esaurito sul device (os error 28)
💔3