0
Emacs + org-mode = Zero
Un sito realizzato con Emacs + org-mode
RasPi zero
alcuni appunti dell'installazione su Raspberry Pi
TODO Xrandr per gestire due monitor zero
individuo le schede/display
xrandr -q
- Display1: LVDS1
- Display2: VGA1
xrandr --output Display1 --primary --mode XXXXxXXXX --rate xxx.xx --output Display2 --mode XXXXxXXXX --rate xx.xx --right-of Display1
https://linuxconfig.org/how-to-configure-your-monitors-with-xrandr-in-linux
DONE WebDAV zero
DONE apache zero
installazione di apache2
TODO org-brain zero
penso potrebbe essere interessante installare org-brain, dipende da come si possono sviluppare i contenuti:
org-brain implements a variant of concept mapping with org-mode, it is inspired by The Brain software (http://thebrain.com). An org-brain is a network of org-mode entries, where each entry is a file or a headline, and you can get a visual overview of the relationships between the entries: parents, children, siblings and friends. This visual overview can also be used to browse your entries. You can think of entries as nodes in a mind map, or pages in a wiki.
Homepage: http://github.com/Kungsgeten/org-brain
org-journal zero
le note sono in questo momento prese attraverso org-journal
We Get zero
Command-line tool for searching torrents.
Basic Usage
we-get --search "royal pains" --target the_pirate_bay,1337x --filter "S01"
scrcpy zero
This application provides display and control of Android devices connected via USB (or over TCP/IP).
Plug an Android device, and execute:
scrcpy -m 1024
(-m limita il massimo della dimensione maggiore a 1024 px)
Permanently booting to text mode (console mode) zero
Getting your Linux system to always boot to console (text / tty) mode is as easy as running a single command:
sudo systemctl set-default multi-user.target
This command sets text mode as the default systemd target (runlevel as it used to be called before systemd). After running this command, reboot your system and it will automatically boot to console / text mode every time.
Don't know the current systemd target used on your system? Use this command, which will show the currently set target:
systemctl get-default
Extra tip: using this, your Linux computer will boot to tty1 (text-only virtual console). You can switch to a different virtual console by using Ctrl + Alt + F2 for tty2, Ctrl + Alt + F3 for tty3, and so on until tty7.
In case you want to undo this change and get your Linux system to boot to the default graphical mode, use:
sudo systemctl set-default graphical.target
After using this command, reboot (sudo reboot) and your system should start in graphical mode, as it was by default.
How to use a WiFi interface zero
This page describes how to configure a WiFi interface on a Debian system, for use on a network.
https://wiki.debian.org/WiFi/HowToUse
Manual
- Using ifupdown
ip a
iw dev
ip link set wlp2s0 up
…
iwlist scan
ifup wlp2s0
iw wlp2s0 link
ip a
Jackd, Fluidsynth e Orca zero
Orca is an esoteric programming language, designed to create procedural sequencers in which each letter of the alphabet is an operation, where lowercase letters operate on bang, uppercase letters operate each frame.
The application is not a synthesizer, but a flexible livecoding environment capable of sending MIDI, OSC & UDP to your audio interface, like Ableton, Renoise, VCV Rack or SuperCollider.
(versione che gira su terminale)
jackd -d alsa --device hw:0 --rate 44100 --period 128
.jackdrc:
/usr/bin/jackd -r -dalsa -dhw:Generic,0 -r44100 -p1024 -n2 -Xraw
fluidsynth --server --audio-driver=jack --connect-jack-outputs /home/schizo/fluidsynth/SalC5Light2.sf2
cd orca/Orca-c/
./build/orca
streaming su A/I live zero
ffmpeg -f jack -i ffmpeg -f flv "rtmp://live.autistici.org/ingest/radiazioni"
streaming attraverso Icecast zero
- TODO FFmpeg Protocols Documentation zero
- TODO FFmpeg Devices Documentation zero
- TODO How to broadcast to Icecast2 by using ffmpeg (FLAC,Opus,Vorbis,AAC,MP3/Windows, Mac) · GitHub zero
- TODO Setting up an Internet radio station (icecast + jackd + idjc) – Charolin's fantastic corner of unbelievable awesomeness zero
RadiAzioni aggiornamenti zero
è stata creata la pagina RadiAzioni nella quale verranno pubblicate sperimentazioni radio
Rumori Ciclici zero
ho reso immediatamente disponibili all'ascolto i Rumori Ciclici all'interno delle TessitureSonore
Un nuovo forum per la comunità italiana su ZeroNet rete tec zeronet zero
visto che sifr, l'amministratore del forum italiano ufficiale, è irraggiungibile e risulta impossibile sia incrementare il quantitativo di dati relativo alle utenze sia aggiornare il software ho pensato di creare un nuovo forum (ZeroTalkItalia++) utilizzando ZeroTalk++ che, tra l'altro, ha tutta una serie di interessanti funzionalità come linkare immagini, filmati, audio, silenziare utenze sgradite… (vedi ZeroTalk++ forum engine)
sul forum ho attivato il Feedbot for ZeroTalk di BinChan che permette di pubblicare feed in formato xml fornendo così una funzionalità newsreader
per chi fosse interessat' può indicare gli indirizzi di feed che desidera vengano riverberati qui su (sono da escludersi contenuti fascisti, razzisti, sessisti e altre sgradevolezze del genere)
request.el – an elisp HTTP library lisp rete tec zero
Uses curl as its backend or emacs's native url.el library if curl is not found.
The default encoding for requests is utf-8. Please explicitly specify :encoding 'binary for binary data.
https://github.com/tkf/emacs-request
l'ho installata perché penso possa essermi utile nella strasformazione dello stream da hubzilla
(vedi ~/bin/hubzilla-channel-stream.el)
Eco No Mia rete zero
sto cercando di provare a mettere in rete il commercio delle mie realizzazioni però mi trovo un po' in difficoltà, tra portali come etsy (particolare per l'autoproduzione artigianale) e altri più generalisti come ebay oppure applicativi che, come openbazaar, danno la possibilità di gestire in maniera autonoma il proprio spazio, non riesco a trovare un buon compromesso tra visibilità e auto(nomia|gestione) e così mi vien da pensare che, sì, siam sempre tutt qua a cercare di assaltare il cielo per rivoluzionare l'esistente, ma rimaniamo sempre vincolati da una nostra dipendenza economica dal sistema che vorremo lasciarci alle spalle; ecco, penso che anche in ambito di "movimento" dovremmo cercare invece di favorire la proliferazione di microECOnomie diffuse che al tentativo di sostentamento affianchino la visione di un'esistenza e una creatività diverse, rivolte al superamento della condizione attuale di schiavitù, quindi cercare, ad esempio, di impostare luoghi, anche in rete, dove poter valorizzare questi nostri tentativi: (aggreg|valorizz)atori di esperienze
quindi, ad esempio, mi sentirei di proporre una revisione della policy di Autistici/Inventati che prevede come principio la "non commercialità":
Spazi e servizi di questo server non vengono destinati ad attività (direttamente o indirettamente) commerciali…
e, invece, aprire uno spazio per la pubblicità di attività ecobiosociocompatili
PaesaggiSonori zero
sull'Intergalactic File Server ho creato il canale PaesaggiSonori nel quale ho caricato le registrazioni audio effettuate durante il Buskers Festival del 2016 @ Lugo
FeedBot-ZeroBlog zeronet zero
in
- FeedBot-N0blogs-ZeroBlog
- FeedBot-XXX-ZeroBlog
ho aggiunto
# inserimento del titolo del feed come tag del post # bot_data['tag'] += [{ 'post_id': bot_data['tag'][-1]['post_id'] + 1, 'value': entry['feed_title'] }] # #
così com'è in FeedBot-Fluss0-ZeroBlog
Beaker rete zero
ho appena installato Beaker:
Beaker is an experimental peer-to-peer browser with support for the dat:// protocol
permette di navigare siti p2p che utilizzano il protocollo / dat:// /
i miei siti: zero
SchiZero zero
- dat://schizero.hashbase.io/
- dat://8ddfd9c1667a1d4fbe69a8c3c8a22dd55655a36bcbff3be3286f10519391dd47/
- https://schizero.hashbase.io/
Schizzi zero
- dat://schizzi.hashbase.io/
- dat://701f6cec08c620a98665a0fa7d59da7a289e19b23b2f8f4fb06bfe9775798e85/
- https://schizzi.hashbase.io/
schizo-rotonde zero
- dat://schizo-rotonde.hashbase.io/
- dat://f74896d02b3703ba7e24ed45ecb35d2ec4398f4e73ebef1bf4acb6a10044f498/
- https://schizo-rotonde.hashbase.io/
schizo-fritter zero
- dat://schizoutenzafritta.hashbase.io/
- dat://3e6f6d526276a7e69efdedbf60e42d886bedb7ada3112569a555d07763c5e037/
- https://schizoutenzafritta.hashbase.io/
- dat://fritter.hashbase.io/
dat:// zero
eventualmente si potrebbe anche solo utilizzare, ad esempio, la cli dat con la quale è possibile pubblicare un sito p2p indicizzabile attraverso Hashbase e quindi navigabile anche in chiaro attraverso l'indirizzo sito.hashbase.io
figata
San Martino aggiornamenti zero
ho aggiunto la pagina SanMartino dedicata al Festival di arte, design e artigianato del filo e della tessitura organizzato a San Martino di Castrozza (TN) al quale partecipo con alcune mie creazioni
NoSocial rete zero
sto provando a collegare il nuovo account su #Mastodon con ZeroMe attraverso ZeroMe Mastodon Bridge
ZeroMe Mastodon Bridge mastodon rete zeronet zero
sto provando ad utilizzare ZeroMe Mastodon Bridge
queste sono le grezze modifiche che ho apportato allo script per farlo funzionare, ovviamente bisognerebbe saperle integrare nel codice in maniera decente
in "%Y-%m-%dT%H:%M:%S.%fZ" sotituisco Z con %z ed elimino la T sostituendola con uno spazio
poi, essendo la timezone scritta senza i due punti (+0000)
ce la metto direttamente io a forza, perché non so fare in altro modo, per adattare il tutto
"%Y-%m-%d %H:%M:%S.%f+00:00"
strptime() argument 1 must be str, not datetime.datetime
quindi bisogna fare argomentodapassare = str(argomentodapassare)
visto che mi ci sono scornato più volte, dato che quando lancio lo script per la prima volta non mi genera mai il file lasttimestamps.txt me ne appunto il formato:
1571670531
1571670547.699
utilizzando la documentazione di Mastodon.py in zeromemastodonbridge.py, in particolare nella funzione
def MastodonToZeroMe(mastodon, zerome_data):
ho modificato
'body': html2text(item['content']),
in
'body': html2text(item['content'] + '\n\n ' + item['url']),
in questo modo per ogni post inviato su ZeroMe avrà il riferimento a quello Mastodon d'origine
feed2toot tec rete zero
finalmente sono riuscito a far funzionare feed2toot (non so cosa non andasse, so solo che con sudo sia nell'installazione che nella configurazione iniziale tutto è andato a buon fine)
adesso inizierò a postare prevalentemente sul mio sito principale attraverso emacs e i vari feed che lo compongono verranno pubblicati ovunque: zeronet, hubzilla, mastodon e… twitter, addirittura, dove ho aperto un account (ancora per poco) poco prima che venisse annuciata l'apertura dell'istanza mastodon https://mastodon.bida.im/
però è un po' un pacco: se metto l'elemento {summary} rischia di superare spesso i 500 caratteri e lui non lo taglia automaticamente, lo segnala come errore, del resto solo {title} {link} sono decisamente pochini
TODO Proxy ZeroNet Privato tec zeronet zero
mi annoto qualche discussione che possa tornarmi utile nel caso mi capiti di provare a impostare un proxy privato per i miei siti su ZeroNet
zerocat.eu undergoing DDoS attack && || getting hacked. zero
quantumkitty
I won't run a proxy again. As I said, there's a vulnerability in ZeroNet public proxies that allows attackers to list the directory of server site folders, and possibly steal private keys and masterseeds. You wake up one morning, server is down, and the SSH terminal TMUX session shows ZeroHello directory files.
Luckily, they only seem to have listed the directory of ZeroHello. I don't know what they were doing there.. it would be interesting to create a honeypot. It may have just been an attempt to shut down the ZeroNet client i.e. DDoS.
My proxy is now running privately.
http://127.0.0.1:43110/Talk.ZeroNetwork.bit/?Topic:1526789823_1NZftAz9VSawGF5JgMYGFv4ByoKEaQbNZu
Zero proxies vulnerability zero
ZeroNet proxies do not disable Stats plugin. Any people can get access /Benchmark tools externally.
I suppose, it is vulnerability for (D)DOS attack.
http://127.0.0.1:43110/Talk.ZeroNetwork.bit/?Topic:1_1LJP7tDoGnWNppUGJoNS8cJbmYTS1TecCC
Setup A Clearnet Proxy for ZeroNet zero
I've set up a clearnet proxy, currently for personal use, may open it for everyone later.
http://127.0.0.1:43110/1EiMAqhd6sMjPG2tznkkGXxhdwFBDdeqT9/?Post:44
Deploy ZeroNet to Heroku as a Public or Private ZeroNet Proxy Service zero
Note: due to formatting issues, some bash commands below have incomplete display. Just copy and paste the bash code block somewhere for the complete commands. Introduction
This is a tutorial on deploying ZeroNet to Heroku as a Python web app. You can host a (1) public or (2) private ZeroNet proxy, or only host (3) your personal zsites (ZeroNet site) statically (with all your zsite contents there) or dynamically (as an open gate to the clearnet and fetch your zsite contents from the zero network) on Heroku…
http://bruce-lab.blogspot.com/2017/11/deploy-zeronet-to-heroku-as-proxy.html
TODO ProxySchizo zero
ho attivato il proxy personale su HEROKU
http://proxyschizo.herokuapp.com/
ma non funziona, devo vedere dai log quale è il problema…
Running a ZeroProxy zero
You might have noticed I just started to host two new ZeroProxies
In this post, I will teach you how to host your own.
http://127.0.0.1:43110/kindlyfire.bit/?Post:9:Running+a+ZeroProxy
#+BEGINCOMMENT First things first, you need :
A domain name pointing to your server (I will refer to it as domain.net) A VPS running Debian 8 (You can get one at DigitalOcean (ClearNet))
Connect to your VPS, on Linux and MAC this would be:
$> ssh root@serverip
Update it:
$> apt update $> apt upgrade
Setup the domain name
The domain name you want to use, here domain.net, needs to have an A record pointing to serverip. You can check this with dig:
$> dig domain.net
; <<>> DiG 9.9.5-3ubuntu0.8-Ubuntu <<>> domain.net ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32341 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;domain.net. IN A
;; ANSWER SECTION: domain.net. 253 IN A 164.132.6.35 <=== THIS IS IT
;; Query time: 23 msec ;; SERVER: 127.0.1.1#53(127.0.1.1) ;; WHEN: Fri Jun 17 23:02:44 CEST 2016 ;; MSG SIZE rcvd: 58
Refer to your domain name provider for help on how to set it up. If you use CloudFlare as DNS provider, make sure CloudFlare protection is disabled for the A record. Get ZeroNet up and running
We will have to download, extract and make ZeroNet run with forever. Let's start:
$> wget https://github.com/HelloZeroNet/ZeroBundle/raw/master/dist/ZeroBundle-linux64.tar.gz $> tar -xvf ZeroBundle-linux64.tar.gz $> rm ZeroBundle-linux64.tar.gz $> wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash $> . ~/.nvm/nvm.sh $> nvm install 5 $> npm install forever -g
Now we have both ZeroBundle and forever installed, let's launch it once:
\(> cd ZeroBundle ZeroBundle/\)> ./ZeroNet.sh
Once you see the following (underneath), hit CTRL + C.
[14:12:02] Ui.UiServer ---------------------------------–— [14:12:02] Ui.UiServer Web interface: http://127.0.0.1:43110/ [14:12:02] Ui.UiServer ---------------------------------–—
Now that ZeroBundle downloaded ZeroNet, we can enable the Multiuser plugin.
ZeroBundle/\(> cd ZeroNet/plugins/ ZeroBundle/ZeroNet/plugins/\)> mv disabled-Multiuser/ Multiuser/ ZeroBundle/ZeroNet/plugins/$> cd ../..
ZeroNet is installed and we are not going to let it run yet. Before, install Tor using these instructions (ClearNet). After that, you can run ZeroNet :
ZeroBundle/$> forever start -c bash "ZeroNet.sh"
You can check the status of scripts running with forever using forever list. Generate an SSL certificate
No, you're not going to pay for it. We'll use certbot by LetsEncrypt, it's free ! You will have to renew your certificate every 90 days though (edit: this is now done automatically thanks to a cron job added by certbot).
$> echo "deb http://ftp.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list $> apt update $> apt install certbot -t jessie-backports $> certbot certonly -d domain.net –standalone
Carefully read the message returned by the last command, and if it didn't worked then fix the issues it pointed out. If you get a success message, note the file it gives you ! Finally, install nginx
Nginx is like Apache, but faster and just overall better. My friend angristan made an easy installation script:
$> wget https://raw.githubusercontent.com/Angristan/nginx-autoinstall/master/nginx-autoinstall.sh $> chmod +x nginx-autoinstall.sh $> ./nginx-autoinstall.sh
You should follow it as I did:
Welcome to the nginx-autoinstall script.
What do you want to do?
- Install Nginx
- Uninstall Nginx
- Update the script
Select an option [1-3]: 1
This script will install Nginx 1.11.1 (mainline) with some optional famous modules.
Please tell me which modules you want to install. If you select none, Nginx will be installed with its default modules.
Modules to install : PageSpeed 1.11.33.2 [y/n]: n Brotli [y/n]: n Headers More 0.30 [y/n]: n GeoIP [y/n]: n Cloudflare's HTTP/2 + SPDY patch [y/n]: y Cloudflare's TLS Dynamic Record Resizing patch [y/n]: n
Choose your OpenSSL implementation :
- System's OpenSSL (default)
- OpenSSL 1.0.2h from source
- LibreSSL 2.4.1 from source
Select an option [1-3]: 1
Nginx is ready to be installed, press any key to continue… <press enter>
Once that's done, we'll have to create a vhost for nginx.
\(> cd /etc/nginx/ /etc/nginx/\)> nano nginx.conf
Find the line include etc/nginx/conf.d/*.conf; and add include /etc/nginx/sites/*.conf; behind (or the line after it, just make sure it comes before }). CTRL + X then Y to save. We can now put our vhost in sites:
/etc/nginx/\(> cd sites /etc/nginx/sites/\)> nano domain.net.donf
Dont forget the .conf suffix, or the file won't load.
Enter this in it:
server { listen 80; servername domain.net; rewrite ^ https://$server_name$request_uri? permanent; }
server { listen 443 ssl http2;
servername domain.net;
sslcertificate /etc/letsencrypt/live/domain.net/fullchain.pem; sslcertificatekey /etc/letsencrypt/live/domain.net/privkey.pem; ssltrustedcertificate /etc/letsencrypt/live/domain.net/chain.pem;
sslprotocols TLSv1.2; sslecdhcurve secp384r1; sslciphers EECDH+AESGCM:EECDH+AES; sslpreferserverciphers on; sslstapling on; sslstaplingverify on; resolver 80.67.169.12 80.67.169.40 valid=300s; resolvertimeout 5s; sslsessioncache shared:SSL:10m; sslsessiontimeout 5m; sslsessiontickets off;
location / { proxypass http://127.0.0.1:43110; proxysetheader Host $host; proxysetheader X-Real-IP $remoteaddr; proxysetheader X-Forwarded-For $proxyaddxforwardedfor; proxysetheader X-Forwarded-Proto $scheme; }
location /Websocket { proxypass http://127.0.0.1:43110; proxyhttpversion 1.1; proxyreadtimeout 1h; #for long live websocket connetion proxysetheader Upgrade $httpupgrade; proxysetheader Connection "upgrade"; }
clientmaxbodysize 20M; }
Don't forget to replace all domain.net with your domain !
nginx -s reload to reload the nginx configuration and you're all set. You should be able to see your proxy by going to domain.net, all good.
If you have any questions, my contact info is in the sidebar.
2 Comments: zero
- ssdifnskdjfnsdjk ━ on Jan 19, 2018 zero
It not worked for me.
The "forever" not worked on CentOS7. Result: -bash: forever: command not found During installation (npm install forever): npm WARN optional Skipping failed optional dependency /chokidar/fsevents: npm WARN notsup Not compatible with your operating system or architecture: fsevents@1.1.3 npm WARN enoent ENOENT: no such file or directory, open '/root/package.json'
When i launched ZeroNet.sh it shown no error and log file was updated with various connections, yet i was unable to visit http://myvpsip (timeout)
– WHAT WORKED for me was this: in directory where is zeronet.py located, create new file zeronet.conf and inside add: [global] uiip = * uiport = 80
Then run "screen" command and inside run zeronet.py by command: "python zeronet.py", detach screen by (Ctrl+a and "d" key), to re-attach, do command: screen -r
- darkdevel ━ on Sep 13, 2016 zero
dyn dns is ok too #+ENDCOMMENT
TODO Cmdline Support For ZeroNet And Zites tec zeronet zero
mi appunto questa discussione e il relativo codice prodotto sino ad ora con la speranza di poter integrare un po' più di funzionalità di ZeroNet all'interno di Emacs
la cosa bella sarebbe un zerome-mode per Emacs tipo identica-mode
Git Center tec zeronet zero
ho clonato i mei due siti principali su ZeroNet,
i due repo sono rispettivamente:
- Schiz0
git clone $pathtodata/1B8RwkM5KhH1g6WZqskx3J1jjeno7xRa7F/schiz0.git was copied to the clipboard.
Replace $pathtodata with correct path to ZeroNet's data folder.
- SchizzI
git clone $pathtodata/1BhXhBiBqedot2vLVkv9zsVQLn9f2ov6qT/schizzi.git
Replace $pathtodata with correct path to ZeroNet's data folder.
ho spostato entrambi i repo su Git-Center
Federazione tec zero
Socccial tec zero
ho fatto un po' d'integrazione tra le varie piattaforme:
dopo aver aperto una finestra su twitter ho installato twittering-mode.el (is a major mode for Twitter) in Emacs ho pure iniziato a provare alcuni modi
(prevalentemente applet su IFTTT) per importare il feed generale di questo sito… anche su tumblr e i canali telegram
Tessiture Sonore aggiornamenti zero
Tessiture Sonore
nella quale vengono approfondite tematiche di Rumorismo Tessile
DONE Rete locale zero
tutto gira intorno all'hotspot attivato nel computer collegato alla rete tramite cavo ethernet:
- l'ip che viene assegnato a tale macchina viene utilizzato per distribuire ZeroNet in locale,
lanciando zeronet con il comando:
$ python2 /path/to/zeronet/zeronet.py --ui_ip MY_Local_static_ip
- con webdav rendo accessibile, sempre su quell'indirizzo,
la mia home sul "server"
- sempre tramite webdav metto in relazione gli aggiornamenti su i vari dispositivi e la repo caricata su AI
DONE Version Control tec zero
seguendo le indicazioni Putting Your org Files Under Version Control
ho creato una repo dei file in org su AI con git in modo tale da poter effettuare modifiche da qualsiasi postazione
ed avere l'aggiornamento di tali variazioni su qualsiasi dispositivo
DONE Surface zero
ho fatto un clone pure su Surface…
DONE Pensierini aggiornamenti zero
ho aggiunto la pagina Pensierini… il nome è tutto un programma
TODO SchizoGizmo firefox zero
qualche anno fa accrocchiai un programmino in perl che leggeva la cache di firefox vi cercava file html e immagini, poi analizzava gli html e quando trovava
l'url di un'immagine la andava a sostituire con una presa a caso tra quelle presenti nella cache;
lo chiamai SchizoGizmo… ora l'ho perso nel corso del tempo e delle memorie digitali dimenticate…
TODO Read FireFox Cache with Python firefox python zero
I had to write a program that does similar thing (locate and read firefox cache and show cache data) in Python. First I tried to automate the about:cache mechanism, but couldn't make it. Later I went for processing raw cache data…
But interestingly I didn't need to use all these knowledge. Just used regular expression to parse the data :-)
Programmatically reading firefox cache zero
My idea on how to painstakingly read the firefox cache…
import glob, re cache_folder = r"~/.cache/mozilla/firefox/[]/cache2\*" urls = set() for cache_filename in glob.glob(cache_folder): with open(cache_filename, 'rb') as file_cache: data = file_cache.read() urls |= set(re.findall("(http.*?)\x00", data)) for url in urls: print url
python - Programmatically reading firefox cache - Stack Overflow
DONE Boodler tec zero
dopo diversi tentativi andati a vuoto sono riuscito,
seguendo il suggerimento per Ubuntu in Installation Information For Various Platforms,
a far funzionare nuovamente Boodler.
ai tempi della Massa Critica avevo generato qualche Ciclo Ambiente Sonoro:
- blop.EchoWorld.mp3
- cavepool.Cavern.mp3
- drumbeat.DualDrums.mp3
- fire.Bonfire.mp3
- frogs.FrogPond.mp3
bene,
TODO sarebbe bello fare qualcosa con la tessitura zero
che ne so,
anche solo la generazione di Ambienti Sonori Tessili a partire dalle armature dei telai;
sarebbe una buona occasione per sporcarsi i polpastrelli con python
DONE Feedbot zeronet zero
attarverso il Feedbot realizzato da Binchan, oltre a importare le notizie dalla "clearnet" direttamente in zeronet (in ziti specifici e in ZeroHello), gestisco anche gli aggiornamenti su i siti realizzati con org-mode pubblicandoli, in questo modo, anche su ZeroBlog
DONE problemi con "nomarkerfeeds.json" e "rssAddresses.txt" zero
di tanto in tanto si azzera il contenuto di entrambe i file;
nel primo caso il contenuto originale ' "{}" mentre quello del secondo è da rigenerare dai backup eventuali che son stati fatti
TODO appuntare le modifiche fatte per l'adattamento al "template" ZeroBlog zero
TODO azzerare il contenuto del campo tag prima di scriverci in automatico zero
TODO Fancy HTML5 export emacs orgmode zero
testare :html-html5-fancy
TODO Fortune emacs orgmode zero
sto cercando di mettere una citazione automatica ogni volta che viene salvata una pagina… un po' alla volta…
Happy hacking! emacs lisp orgmode rete zeronet zero
È sempre una questione di fili che s'intrecciano,
Di tessiture,
Di reti…
TODO EmacsPP0 (Emacs - Punto Presenza 0) zero
una normale giornata Emacsiana nel quartiere ZeroNet
In Scrittura zero
- sudo mount /home/schizo/AI zero
- python /dove/è/installata/ZeroBundle/ZeroNet/zeronet.py zero
è possibile avviare zeronet senza lanciare il browser?
ovviamente!
basta lanciare lo script zeronet.py piuttosto che start.py che generalmente viene lanciato da ZeroNet.sh - M-x gnus zero
- M-x elfeed-update zero
dopo aver riprovato newsticker:
Newsticker provides a newsticker for Emacs. A newsticker is a thing that asynchronously retrieves headlines from a list of news sites, prepares these headlines for reading, and allows for loading the corresponding articles in a web browser.
integrato in Emacs
e RSS feeds
Org can add and change entries based on information found in RSS feeds and Atom feeds. You could use this to make a task out of each new podcast in a podcast feed. Or you could use a phone-based note-creating service on the web to import tasks into Org.
mi son trovato di fronte elfeed! oserei dire che non c'è un paragone con gli altri:
essenziale, veloce…
c'è pure elfeed-org:Maintaining tags for all rss feeds is cumbersome using the regular flat list where there is no hierarchy and tag names are duplicated a lot. Org-mode makes the book keeping of tags and feeds much easier. Tags get inherited from parent headlines. Multiple files can be specified to separate your private from your work feeds for example. You may also use tagging rules to tag feeds by entry-title keywords.
See https://github.com/remyhonig/elfeed-org for usage.
- eww zero
- M-x du-w zero
- M-x org-capture zero
- M-x org-publish zero
- rawdog -uw zero
- Feedbot zero
In Lettura zero
…
TODO XMLtoSQL zero
cercare un convertitore xml > DB per elaborare un feeding su ZeroHello di qualsiasi Zito che produca feed
TODO 0ERC zero
manca un client IRC che si possa interfacciare a ZeroMe
TODO ASCIICAM zero
indagare sulla nostra presenza, almeno supposta, davanti a i monitor: porre un ulteriore livello di [pre|assenza]
HasciiCam :: ASCII art for the masses zero
Introduction
HasciiCam makes it possible to have live ascii video on the web. It captures video from a tv card and renders it into ascii letters, formatting the output into an html page with a refresh tag, or in a live ascii window, or in a simple text file. It gives the possiblity to anybody that has a bttv card, a unix box and a cheap modem line to show live (h)ascii video can be viewed without any need for extra applications, plugins, java etc.
DONE Telegra.ph emacs lisp orgmode telegraph zero
il tutto viene gestito da questo piccolo script in elisp:
;; telegraph.el (provide 'telegraph-json-page) (defun telegraph-json-page () (interactive) (setq json-page (substring-no-properties (nth 0 kill-ring))) (shell-command (format "cd \"/tmp\"; wget \"https://api.telegra.ph/getPage/%s\?return_content\=true\"; mv \"%s\?return_content\=true\" \"%s\.json\"" json-page json-page json-page) ) (setq json-file (concat "/tmp/" json-page ".json")) (print json-page (get-buffer "*scratch*")) ; (print (json-encode (json-read-file json-file)) (get-buffer "*scratch*")) (setq json (json-encode (json-read-file json-file))) (print json (get-buffer "*scratch*")) (let ((case-fold-search t)) ; or nil (goto-char (point-min)) (while (search-forward "\\\"" nil t) (replace-match "\"")) ) (goto-char (point-min)) (while (search-forward "\\n" nil t) (replace-match "\ ")) ) )
sicuramente malissimamente codificato, ma orgogliosamente funzionante!
… e questa invece è una versione che, pur essendo sempre raffazzonata è mooolto migliore: non si appoggia più all'elaborazione del json a javascript perché tutti i dati necessari vengono estrapolati direttamente in lisp e presentati bell'e pronti per essere catturati da org-mode e inseriti nella formazione del nuovo post, senza bisogno di una trasformazione al volo durante il caricamento della pagina html… un bel passo avanti!
; ;; telegraph_2.el ; (provide 'telegraph-json-page-2) (defun telegraph-json-page-2 () (interactive) (setq json-page (substring-no-properties (nth 0 kill-ring))) (shell-command (format "cd \"/tmp\"; wget \"https://api.telegra.ph/getPage/%s\?return_content\=true\"; mv \"%s\?return_content\=true\" \"%s\.json\"" json-page json-page json-page) ) (setq json-file (concat "/tmp/" json-page ".json")) (setq json-prova (json-read-file json-file)) (setq json-list (cdr (assoc 'result json-prova))) (print "#+BEGIN_CENTER" (get-buffer "*scratch*")) (print (concat "[[" (cdr (assoc 'image_url json-list)) "]]") (get-buffer "*scratch*")) (print "#+END_CENTER" (get-buffer "*scratch*")) (print (cdr (assoc 'description json-list)) (get-buffer "*scratch*")) (print (concat "[[" (cdr (assoc 'url json-list)) "]]") (get-buffer "*scratch*")) (let ((case-fold-search t)) ; or nil (goto-char (point-min)) (while (search-forward "\"" nil t) (replace-match "\ ")) ) )
TODO interazione e attenzione zero
adesso lo script:
- si prende come nome della pagina telegra.ph da scricare ciò che viene memorizzato nella prima posizione del kill-ring di emacs, quindi se
ci si sbaglia si va a creare dei file assurdi, anche se nella directory tmp
- a seconda del current-buffer, in cui ci si trova, il ciclo di ricerca/sostituzione elimina le virgolette, quindi è opportuno lanciarlo dal buffer scratch dove viene scritto il risultato dell'elaborazione e da dove di eseguirà un bel org-capture
DONE PUBDATE emacs orgmode zero
nell'impostazione di un template di cattura in org-capture-templates
ho aggiunto
:PROPERTIES: :PUBDATE: %t :END:
in modo tale da automatizzare l'inserimento della data di pubblicazione
utilizzata nella generazione del feed xml
DONE Fasi per la pubblicazione di Schiz0 ai emacs orgmode xml zeronet zero
per pubblicare il sito Schiz0 su A/I e ZeroNet insieme ai file xml dei vari feed
queste sono le operazioni in sequenza
- pubblicare NoviglobRss
- lanciare rawdog
- pubblicare Noviglob e SchiZero
- eseguire segnatura e pubblicazione di Schiz0
tradotto in un semplice script in elisp da lanciare da emacs…
DONE (provide 'schiz0-pubblicazione) orgmode zero
(provide 'schiz0-pubblicazione) (defun schiz0-pubblicazione () (interactive) (org-publish-project "NoviglobRss") (shell-command "rawdog -uw") (org-publish-project "Noviglob") (org-publish-project "Schizero") (shell-command "python /directory/di/ZeroBundle/ZeroNet/zeronet.py siteSign "indirizzo" "password" --publish;") )
TODO Webdav ubuntu zero
in Nautilus collegandomi al server con:
davs://www.autistici.org/dav/nome_utente
riesco a montare il filesystem senza problemi d'autenticazione
però viene montato in una sottodirectory run inaccessibile in scrittura durante le fasi di aggiornamento del sito
per cui sono costretto a continuare ad usare /davfs
questo comporta che ogni volta che eseguo il "sudo mount directory" dovevo rispondere con un y a:
/sbin/mount.davfs: the server certificate is not trusted issuer: Let's Encrypt, US subject: autistici.org identity: autistici.org fingerprint: 20:91:af:b1:e8:62:fd:b6:3d:0d:2b:68:05:37:f9:f6:1d:85:79:75 You only should accept this certificate, if you can verify the fingerprint! The server might be faked or there might be a man-in-the-middle-attack. Accept certificate for this session? [y,N]
TODO All Interconnected orgmode zeronet zero
Feeds zero
DONE generare feed per SchiZero zero
e elencarli in una pagina relativa;
probabilmente potrebbe avere senso crere due progetti in org:
- uno per la generazione di feed interni a Zeronet
- uno per la generazione di feed relativi ad A/I
DONE Feedbot-Schiz00 zero
attivare un feedbot che pubblichi gli aggiornamenti dei vari xml nel sito Schiz00
TODO Telegram emacs ERC bitlbee purple emacs telegram zero
vorrei provare ad accedere a Telegram con ERC;
bitlbee, attraverso la libreria libpurple, offre il plugin telegram-purple
DONE ID orgmode zero
:PROPERTIES: :ID: id :END:
questa proprietà (ID) che genero con la funzione org-id-get-create rendono il post non linkabile nell'elenco generato attraverso org-info.js
quello di generare l'id (su tutti gli elementi) è un tentativo che ho fatto a fronte del fatto che quando provo a pubblicare il feed rss con ox-rss.el (RSS 2.0 Back-End for Org Export Engine) mi viene riportato l'errore
save-current-buffer: Symbol’s function definition is void: org-icalendar-create-uid
a questo proposito…
mi rendo conto che è una modifica da lamerone pazzesco però, dopo aver visto la patch Fix id generation in ox-rss.el, ho provato semplicemente a commentare la riga (org-icalendar-create-uid filename 'warn-user) in
(let ((bf (get-file-buffer filename))) (if bf (with-current-buffer bf (org-rss-add-pubdate-property) (write-file filename))) (find-file filename) ; (org-icalendar-create-uid filename 'warn-user) (org-rss-add-pubdate-property) (write-file filename) (kill-buffer)) (org-publish-org-to 'rss filename (concat "." org-rss-extension) plist pub-dir))
adesso l'xml viene generato
DONE How to fetch all posts using tumblr API tumblr zeronet zero
You can put this code in your html or php.
<script type="text/javascript" src="http://YourTumblrName.tumblr.com/js?start='post'&num='posts-total'"></script>
It fetches the content of your tumblr into a page, but it not very flexible. I'm still trying to get the dates and tags fetched. And the image quality is not as good as in Tumblr…
How to parse tumblr JSON feed zero
visto che nel JSON file sono presenti solo 20 post preferisco la soluzione precedente, anche se meno bella
<script type="text/javascript" src="http://ordine-complicato.tumblr.com/api/read/json"></script> <script type="text/javascript> var tumblr_api_read = { "tumblelog": { "title": "First Title", "description": "", "name": "clintonbeattie", "timezone": "US/Eastern", "cname": false, "feeds": [] }, "posts": [{ "id": null, "url": "", "url-with-slug": "", "type": "regular", "date-gmt": " GMT", "date": "Wed, 31 Dec 1969 19:00:00", "bookmarklet": null, "mobile": null, "feed-item": "", "from-feed-id": 0, "unix-timestamp": 1333622193, "format": "html", "reblog-key": "TmN3ujDJ", "slug": "", "regular-title": "", "regular-body": "" }] }; </script>
Use tumblrapiread. zero
<script src="http://ordine-complicato.tumblr.com/bio/json"></script> <script> alert(tumblr_api_read.tumblelog.title); // Shows "First Title" alert(tumblr_api_read.posts.length); // numero di post for (var i=0;i<tumblr_api_read.posts.length;i++) { var thisPost = tumblr_api_read.posts[i]; // alert("This post was created at " + thisPost.date); photourl = "<img style='display: block; border:0px;' src='" + tumblr_api_read["posts"][i]["photo-url-400"] + "' />"; document.write(photourl); } </script> <script type="text/javascript" src="http://ordine-complicato.tumblr.com/api/read/json"></script> <script type="text/javascript"> var posts = tumblr_api_read['posts-total'] // total posts var totalposts = "<b>Total posts:</b> "; document.write(totalposts) document.write(posts) </script> <script type="text/javascript"> nmax = 50; n = tumblr_api_read["posts-total"]; if (n > nmax) n = nmax; for (i = 0; i < n; i++) { photourl = "<img style='display: block; border:0px;' src='" + tumblr_api_read["posts"][i]["photo-url-400"] + "' />"; document.write(photourl); } </script> <script type="text/javascript"> // The variable "tumblr_api_read" is now set. document.write( '<a href="' + tumblr_api_read[1][0]['url'] + '">Most recent Tumblr post</a>' ); </script>
(boh! non ricordo da dove ho tirato fuori questi esempi, penso da https://pastebin.com)
TODO Accessing JSON data in elisp emacs json orgmode zeronet zero
(require 'json) (let* ((json-object-type 'hash-table) (json-array-type 'list) (json-key-type 'string) (json (json-read-file "test.json"))) (car (gethash "projects" json)))
The let* is required because otherwise the call to json-read-file will not see the previously bound values as let sets them in parallel…
As for the access functions, gethash retrieves a value by key from a hash table, whereas car returns the first list element. If you need a different one, you can use nth with an index.
https://emacs.stackexchange.com/questions/27407/accessing-json-data-in-elisp
Introducing json.el zero
JSON is a lightweight data interchange format based on a subset of JavaScript. You can read all about JSON at json.org. json.el is a JSON parser and generator for Emacs Lisp, which can produce an Emacs Lisp data structure from a JSON object and vice-versa. It’s been Included with Emacs since February 2008.
Using it is pretty straightforward; here are some examples.
TODO org-json.el — conversion between org and json zero
https://www.emacswiki.org/emacs/org-json.el
;; Usage: ;; 1. call (org-json-encode) to convert org(in current buffer) to json, ;; return convert json. ;; 2. call (org-json-decode json) to convert json to org, ;; return converted text. ;; Example: ;; * i1 [2,3,4] ;; * i2 3.4 ;; * i3 "fdsafs" ;; => (("i1" . [2,3,4]) ("i2" . 3.4) ("i3" . "fdsafs")) ;; ;; * i1 ;; [2,3,4] ;; * i2 ;; 3.4 ;; => (("i1" . [2,3,4]) ("i2" 3.4)). ;; * lv1_1 ;; ** lv2a 1 ;; ** lv2b 2 ;; * lv1_2 "tt" ;; => (("lv1_1" . (("lv2a" . 1) ("lv2b" . 2))) ("lv1_2" . "tt")) ;; * vect ;; ** 0 "idx0" ;; ** 1 1.23 ;; ** 2 ;; [5.2, "2.3t", 1] ;; => (("vect" . ["idx0" 1.23 [5.2 "2.3t" 1]])) ;; * long_src ;; +begin_src ;; line1 ;; line2 ;; +end_src ;; => (("long_src" . "line1\nline2\n"))
TODO ubuntu 17.10 ubuntu zero
- viene segnalata la possibile mancanza di firmware, raven (amdgpu)
- ricordarsi di vedere se e possibile eliminare texlive… è troppo pesante!
DONE Telegra.ph zero
sono riuscito ad impostare una pagina dove pubblico ciò che attraverso http://telegra.ph faccio confluire su i miei canali telegram
il processo è piuttosto stupido e laborioso,
ognuno c'ha i suoi limiti. . .
e quello che ora passa il convento è sulla pagina. . . Telegraph
TODO Telegraph API zero
sicuramente sarebbe bello poter sfruttare le API di Telegraph
e quindi bisognerebbe provare a capirci qualcosinina di JavaScript
DONE Finalmente! JavaScript emacs tec zero
sono riuscito a far funzionare lo script org-info.js
ed ora la rappresentazione di lunghi file contenenti molti argomenti non è più un problema. . . anzi
DONE Titolo zero
c'è voluto molto per capire che ciò che bloccava lo script era la mancanza di un titolo!
più specificatamente,
i miei file "org" contenevano sia un #+TITLE che un #+SUBTITLE
e proprio quest'ultimo scomponeva la riga "html" d'esportazione:
in sostanza è necessario avere
<h1 class=title>titolo</h1>
altrimenti lo script non funziona
DONE Timestamp zero
perché una sezione possa essere collegabile dalla lista ottenuta per tag è necessario anche inserire una data attiva nella prima riga dopo il titolo (anche prima di una sezione delle PROPERTIES), cosa che può essere ottenuta dall'annotazione CLOSED quando si passa da TODO a DONE o da i template di org-capture
Embedding Youtube videos with org-mode links emacs tec zero
un interessantissimo articolo
http://endlessparentheses.com/embedding-youtube-videos-with-org-mode-links.html
TODO MobileOrg emacs tec zero
verificare l'avanzamento delle nuove versioni