Skip to main content


 

Last time we had #, some of the dough got wrapped around a diced apple (one quarter of a big apple per roll).



I think this is going to happen every time we have pizza, at least as long as renetta apples are available (probably not very long, since they are a winter variety).

David de Groot 𓆉 reshared this.



 

apparently, the # shortage may not be caused by hoarding and stupidity

Charles Stanhope reshared this.

 
This article is presenting a sensible argument. But dang, it could've so easily been explained in two sentences.
 
The point they make about people using more, because they are at home is valid, but reading that article you'd think there weren't hordes of hoarders at the beginning. They certainly exist where I live!
The stores here were selling out for a few days, but quickly adjusted their truckloads. There was supply every day. After a few days they weren't ever selling out.
Hoarders turned to flour next, but that's fixed, so now there is no yeast! Or isopropyl.
Plenty of bog roll though! :-)


 

Developer-driven software distribution is a bad idea, which is why I dislike things like Flatpak.

Having distro maintainers involved in the process and installing your software from a free software distribution like Debian or FreeBSD is a much better distribution of power. The packages can be tuned to suit their environment without the developer having to repackage it for every distro, and the distro maintainers can keep out anti-features like telemetry and advertising.

The middleman may seem annoying to developers, but embrace the model and it'll work for you. Landing packages in your favorite distro isn't actually that hard, and the rest of the distros will follow. If you're an end-user who wants to see some software available for your distro, look into packaging and volunteer - it's easy.


I'd recommend following the link to read the full thread
 
Well, the original post recommended getting software *into* (from, for the user) the distributions, with the distribution maintainer as middleman, not just packaged as .deb (or .rpm, etc.) from a third party repository; those skip the middleman are just as bad as flatpak (and even worse, as you have to install them as root).
 
Having thought about it more generally, I think there are two dimensions - technical and social. IMO, a major part of the value behind trustworthy distributions like debian is that they have proven to maintain certain curatorial standards with software they include. I don't see why something like this (i.e. the middle(wo)men) might not happen with Flatpaks too. One could be using Flatpaks coming from a trustworthy curated pool with PGP signatures and hashes on everything.
 
Having that said, I certainly wouldn't want to have distributions replaced with Flatpaks. For now I consider Flatpaks just a little better alternative to "curl ... | sudo bash" if there is no proper package available. (And I wouldn't want to be installing `git` or `curl` with Flatpak for sure).
 
I don't see any technical reason why there couldn't be a trustworthy source of curated flatpacks, but wouldn't that be basically a distribution repository?

Yes, programs wouldn't have to be patched to work with different versions of their dependencies, but flatpacks would have to be regenerated every time a dependency has a security issue, so I'm not convinced it would be easier for the maintainers.



 

I did this one of the first days of the lockdown, but I only took pictures a couple of days ago a sami-style leather pouch from an old (and quite ugly) leather jacket¹ and some red felt I had around:


I browsed through a number of search results for “sami style leather pouch” and drafted my own (very simple) pattern; I'm afraid I've lost the links I used.

My SO mentioned that it looks like pouch of gold coins from fantasy games, but the real contents are much more preciooouuuusss:



(the biggest, heavier steel washers I could find in the local DIY stores, that I use as pattern weights)

¹ that I got for free under the menace “if you don't come to take this (and other perfectly working things, including some almost-new garments) I'm going to throw everything away”

 


 


 

# # #

with a spare piece of wood, some wire, two clothespins...

 
Bel lavoro, grande

 

>> Who led the digital transformation at your company?
>> A) CEO
>> B) CTO
>> C) CIO
>> D) COVID

> Chief Officer of VIDeoconferencing




 

Inspired by an article that @Fabio wrote, I spent this afternoon configuring an nginx to serve video streams.

Almost everything works, except that apparently my letsencrypt configuration has broken (aaargh). Well, it can still be used with a non-matching certificate until I get to fix it.

And then I tried to install OBS Studio, and discovered that my laptop is too old, and it doesn't even try to load.

:(
 
maybe. I'm not sure if I have the motivation to go down that sinkhole.

At the moment I don't really have plans for any kind of streaming; it was just something cool to do together-ish with the lug.
 
I guess I will be able to watch a more professional-looking streaming of @Fabio making gnocchi than the one he did via jitsi :D
 
that's why I spent time looking on how this work, obviously

 

An explanation of some social dynamics that is definitely worth reading even if formatted horribly.
 
I think I did mention that it was formatted badly :D

thanks for the dump :)
 
You absolutely did mention it! I just couldn't believe how bad it was!
Then I got more interested in extracting the information than in actually reading it for a while, because... I'm like that.


 

 
@Fabio Ha! I see now why you tagged it with #. 😆
 
Ha! Hahahahaha! 🤣🤣🤣

 

Dirette video con NGINX e OBS Studio


In questi giorni di reclusione forzata, si fa affidamento a internet per portare avanti le nostre vite: telelavoro, videoconferenze, scuola online.

In questo piccolo articolo, vediamo come configurare un nostro server per fare dirette online, in alternativa a Youtube, Facebook, etc etc.

Cosa serve

  • un server, magari una VPS, con una buona disponibilità di banda
  • conoscenze base di linux, bash, ssh, e cose così
  • colla vinilica
  • forbici con la punta arrotondata

Protocolli e software


Il protocollo più usato per le dirette video è RTMP

Per funzionare, una sorgente invia un flusso di dati a un server che si occupa di rigirare il flusso ai vari client che lo richiedono.

Questo è il motivo per cui serve avere banda disponibile. Una diretta con 10 spettatori occuperà 10 x banda necessaria per il video in uscita più quella in ingresso per la sorgente.

È possibile far funzionare il server su un RaspberryPI a casa? Puo' essere, ma non potrete avere molti spettatori, a seconda della vostra connessione a internet.

Come sorgente useremo OBS Studio, come server NGINX, che è più conosciuto come server web, ma esiste un modulo che supporta rtmp.

Come client potremmo usare VLC, o altri player che supportano RTMP, ma vogliamo che la diretta sia visibile da una pagina web.

Fortunatamente NGINX supporta anche HLS, un protocollo di stream video basato su http, che permette di visualizzare la diretta in un browser, grazie a librerie javascript come video.js.

NGINX lo faremo girare su un server con Debian 10 "buster".

In questo articolo presumiamo che non ci sia già un server web in esecuzione (tipo Apache o altri)

Installiamo e configuriamo il server


installiamo nginx e il modulo rtmp

# apt install nginx libnginx-mod-rtmp

Il modulo rtmp ha una sua configurazione da mettere nel file /etc/nginx.conf. Per facilitarci la vita, creaiamo una cartella che conterrà la configurazione per rtmp

# mkdir -p /etc/nginx/rtmp.d

e nel file /etc/nginx.conf aggiungiamo

rtmp {
include /etc/nginx/rtmp.d/*;
}

Aggiungiamo la configurazione di rtmp. NGINX si occuperà di creare i segmenti video e la playlist m3u8 necessari per il protocollo HLS, dobbiamo dirgli dove. Glieli faremo salvare in /tmp/hls.

Creiamo il file /etc/nginx/rtmp.d/hls

server {
listen 1935;
ping 30s;
notify_method get;

application live {
live on;

# sample HLS
hls on;
hls_path /tmp/hls;
hls_sync 100ms;
hls_fragment 3;
hls_playlist_length 60;
allow play all;
}
}

NGINX sarà in ascolto per lo stream rtmp sulla porta 1935, la porta di default del protocollo.

Ora configuriamo la parte web.

Sostituiamo il contenuto del file /etc/nginx/sites-available/default con:

server {
listen 80;
listen [::]:80;
server_name ilmioserver.it;

root /var/www/html;

location / {
index index.html;
}

location /hls {
# Disable cache
add_header Cache-Control no-cache;

# CORS setup
add_header 'Access-Control-Allow-Origin' '*' always;
add_header 'Access-Control-Expose-Headers' 'Content-Length';

# allow CORS preflight requests
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain charset=UTF-8';
add_header 'Content-Length' 0;
return 204;
}

types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}

root /tmp;
}

# rtmp stat
location /stats {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}

# rtmp control
location /control {
rtmp_control all;
}
}

Con questo file configuriamo:
  • la radice del nostro web server, da dove verrà servita la pagina agli spettatori, che sarà salvata in /var/www/html
  • il percorso (/hls) da cui saranno serviti i file video, presi da /tmp/hls. È lo stesso percorso impostato nella configurazione della parte rtmp.
  • due percorsi di 'supporto', compresa una pagina di statistiche sugli stream.
Verifichiamo che la configurazione non contenga errori di sintassi:

# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Ottimo. Ricarichiamo la configurazione.

# systemctl reload nginx

La pagina di visualizzazione


Creiamo il file /var/www/html/index.html

<!DOCTYPE html>
<html lang="en">
<head>
<link href="https://vjs.zencdn.net/7.1/video-js.min.css" rel="stylesheet">
<script src="https://vjs.zencdn.net/7.1/video.min.js"></script>
</head>
<body>
<video id="player" class="video-js vjs-default-skin" controls >
<source src="/hls/mystream.m3u8" type="application/x-mpegURL" />
</video>

<script>
var options, video;

options = {
autoplay: true,
muted: true
};

video = videojs('player', options);
</script>

</body>
</html>

notiamo l'indirizzo della sorgente video: src="/hls/mystream.m3u8": mystreamsarà l'identificativo della diretta da utilizzare nella configurazione di OBS.

Per finire, aggiungiamo il foglio di stile per le statistiche. Usiamo quello di esempio installato col pacchetto:

# gunzip /usr/share/doc/libnginx-mod-rtmp/examples/stat.xsl.gz -c > /var/www/html/stat.xsl

le statistiche saranno raggiungibili su http://miodominio.it/stats.

In onda


Installiamo OBS Studio.

Al primo avvio, eseguiamo la configurazione guidata.

Scegliamo 'Ottimizza per le dirette'

Segliamo una risoluzione e un framerate (FPS). Io ho scelto 1280x720 a 30 FPS.

Ora configuriamo il servizio di streaming. Scegliamo "Personalizzato...".

Come server inseriamo rtmp://miodominio.it/live/

Come 'Codice delle dirette' mettiamo mystream. Nota: è lo stesso nome utilizzato per la sorgente video nella pagina html, mystream.m3u8

Viene eseguito un test che ottimizza le impostazioni.

A questo punto aggiungiamo delle fonti in OBS e pigiamo su "Avvia la diretta". Vi rimando alla documentazione di OBS per la cofigurazione di scene e fonti.

La diretta sarà visibile con un browser su http://miodominio.it/ o con un lettore video, come VLC, aprendo l'indirizzo http://miodominio.it/hls/mystream.m3u8

Interattività


Questo sistema permette di avere una diretta video "uno a molti" tipo televisione. Ma questo è internet, è interattivo! Vogliamo poter ricevere domande e commenti dai nostri spettatori mentre siamo in diretta.

I servizi proprietari di streaming mettono a disposizione una chat a corredo del video. È una buona idea, facciamolo anche noi!

Ovviamente non ci metteremo a scrivere un sistema di chat, ma useremo uno dei più usati e storici sistemi su internet: IRC.

In particolare, inseriremo un client IRC web nella pagina, configurato per collegarsi a un canale predefinito. Da qui gli utenti potranno interagire tra loro e con noi (che terremo un client IRC aperto durante la diretta).

Utiliziamo KiwiIRC come client IRC web. La documentazione ci dice che il formato dell'url per indicare il canale da utilizzare è https://kiwiirc.com/nextclient/#irc://irc.freenode.net/#<nome del canale>. (ci colleghiamo alla rete irc di freenode)

Aggiungiamo quindi il seguente pezzo di codice html nella pagina index.html, appena sotto il tag </video>

<iframe width="100%" height="600"
src="https://kiwiirc.com/nextclient/#irc://irc.freenode.net/#ilmiocanale"></iframe>

(ricordiamoci di mettere il nome del canale corretto)

Conclusioni


Abbiamo creato da zero un semplice servizio di streaming live interattivo.

Da qui è possibile modificare il sistema per supportare più live in contemporanea: basta creare una pagina con il corretto nome dello stream come sorgente video e il corretto canale irc per la chat.

Una nota sulla sicurezza: il server RTMP è in ascolto su internet senza alcun sistema di autenticazione. Chiunque puo' avviare uno stream.

Una soluzione puo' essere mettere il server RTMP in ascolto solo su localhost, modificando il file /etc/nginx/rtmp.d/hls

server {
listen localhost:1935;
[...]

e utilizzare un tunnel ssh per collegarsi:

$ ssh -L 1935:localhost:1935 utente@miodominio.it

In questo caso, OBS dovrà collegarsi a rtmp://localhost/live

Esistono altre possibilità per autenticare la connessione RTMP, ma le indagheremo in un prossimo articolo.
https://www.gl-como.it/v2015/diretta-video-con-nginx/

Z0N1N0Z reshared this.


 

I have family and friends who work in the NHS and other health sectors that feel exactly like this.
Immagine/foto

 

The crones huddled in their secluded hut, brewing merrily.

They startled as a voice called from the entrance, "Are you well?"

"We are," said one.

"For now," said another.

"Supplies are running a bit low," mentioned the third.

"I can fetch what you need," offered the voice.

"What do you wish in return?"

"The secret to your health."

They agreed, gave the list and it was fulfilled.

"So what is your secret?"

"Wash your hands; now go."

# # # # #


 

#





from https://www.instagram.com/ortolanileo/




Leo: "and now some tips to live this day with lightheartedness!"
"you can read a good book"
"or study a foreign language"
"or exercise"
"or tidying wardrobes"
"or"

Tv: "tearing down this wall will cost you $ 3000, but you'll have the well-lit kitchen you wanted!"


 

Non sai che server # scegliere? Su https://iorestoacasa.work metti il nome della stanza e poi il isto ti assegnerà il server più libero #

 

RT @wolfwithdances@twitter.com

Decided to keep a local copy of reference essentials just in case anything disconnects us. All of Wikipedia, Wikibooks, Project Gutenberg's eBooks, and some Linux distributions. That's it there, on my pinky.

The world may be terrifying these days, but it's still kind of amazing.

🐦🔗: https://twitter.com/wolfwithdances/status/1241390245045624832
Immagine/foto


 

I might have accidentally bought some new #.

Immagine/foto

Text reads:

I wonder if being in love with the blood-red ink I've recently bough is yet another sign of the fact that I can't prove I'm not a vampyre(sic).
I should start wearing the black ribbon whose precepts I've always followed (with no plans to stop).


At least this looks like fresh blood and not something used to sign a pact with the devil.


The ink is Rohrer & Klingner writing ink, merinda.

# #
 
... "accidentally" ...
 
It wasn't my fault! it just happened!

(the fact that I visited two brick and mortar shops, opened a forum thread asking for more shops to try and then browsed through the online reseller list on the producer's website until I found one I liked doesn't mean I can't claim it was something like the devil forcing me to act, right?)

@Fabio
This entry was edited (8 months ago)

 

Look ma! New site!

yes, ma. I copied it from Foliate.. sorry..

Thibault reshared this.

 
Did you ask them first?
 
me copying the website
Immagine/foto

 


 

What's new in # today:

- nice button in headbar to update main menu list or event cached data
- nice overlay toaster to show notifications


- main menu data is updated automatically at start if older than one day
- event cache is updated automatically at open (if network is available).
- event data is downloaded asynchronously. This leave the UI responsive while downloading.
- talk detail page show "conflicting" starred talks

- Remind upcoming starred events with a system notification

What's wrong in # today:

- flatpak doesn't work anymore (see #. I think it's related to sandbox permissions, but I can't understand how fix it. So, flatpak building in builds.sr.ht is disabled.
- The "+" button ("Add event from URL") is just a placeholder. More work must be done to support it correctly
- apart from event data, other downloads are still sync and block the ui
- I still have issues with Leaflet and folding.... I'm missing something here...



please, send help...

What's missing, in "likely it will land" order:

- Download all data asynchronously.
- An app menu is needed, with things like "options" and "back to event list" ...
- An options window, with things like "update event cache every" and "clear all cached data"
- The "Map" page is still a placeholder
- Support for FOSDEM's room status API
# #confy

Thibault reshared this.


 


 


 

Please STOP, stop, stop using #Google #reCaptcha on your websites!
You are giving away your visitors' #privacy and they cannot even opt-out and avoid it if they want to reach your contents.
https://www.fastcompany.com/90369697/googles-new-recaptcha-has-a-dark-side
#privacyMatters #webdevelopment

2 people reshared this


 

debian


debian social

GREAT NEWS!


# # # # and .... more?
The Debian social team aims to run a few services under the debian.social domain. Our goal is to create a safe space for Debian contributors (whether their project members or not) to share what they're doing in the project and to showcase their work, collaborate with others and share knowledge. Just like planet Debian, it's completely fine for these platforms to have a personal touch, however, our goal is not to create any kind of social network per sé.
You can read it here!

# #

 

# # # built on sourcehut build service, with a nice artifact. :)

https://builds.sr.ht/~fabrixxm/job/165908

still a test. Next step, trigger build of master branch when pushed.


 

RT @Merge_IT@twitter.com

A seguito dell'ennesimo decreto governativo per il contenimento del # ci troviamo costretti a rimandare # 2020 a data da destinarsi.
Ci scusiamo per il disagio.
Continuate a seguirci per aggiornamenti.

🐦🔗: https://twitter.com/Merge_IT/status/1235506618764320768

This website uses cookies to recognize revisiting and logged in users. You accept the usage of these cookies by continue browsing this website.