diff options
Diffstat (limited to 'content/it/articles')
| -rw-r--r-- | content/it/articles/_index.md | 5 | ||||
| -rw-r--r-- | content/it/articles/about-loneliness/index.md | 12 | ||||
| -rw-r--r-- | content/it/articles/baking-programs/index.md | 13 | ||||
| -rw-r--r-- | content/it/articles/bash-notes/index.md | 215 | ||||
| -rw-r--r-- | content/it/articles/cad-designing-in-gnu-linux/index.md | 71 | ||||
| -rw-r--r-- | content/it/articles/ceasar-quote/index.md | 18 | ||||
| -rw-r--r-- | content/it/articles/come-funziona-questo-sito/index.md | 13 | ||||
| -rw-r--r-- | content/it/articles/conquista-la-folla/index.md | 4 |
8 files changed, 307 insertions, 44 deletions
diff --git a/content/it/articles/_index.md b/content/it/articles/_index.md index e69de29..c810a15 100644 --- a/content/it/articles/_index.md +++ b/content/it/articles/_index.md @@ -0,0 +1,5 @@ ++++ +title = "Articoli" ++++ + +I miei articoli diff --git a/content/it/articles/about-loneliness/index.md b/content/it/articles/about-loneliness/index.md index 9718bc1..f5e04b0 100644 --- a/content/it/articles/about-loneliness/index.md +++ b/content/it/articles/about-loneliness/index.md @@ -1,12 +1,14 @@ +++ -title = "About Loneliness" +title = "La solitudine: riflessioni e approfondimenti." date = "2011-08-11T18:09:41+00:00" -draft = true type = "quote" -tags = ["loneliness", "solitude"] image = "/uppies/2011/08/loneliness.jpg" author = "Danilo M." +excerpt = "again on loneliness, solitude and misantropy" +categories = [ "Self Reflection"] +tags = ["solitude", "loneliness", "life"] +++ - -TODO: Tradurre questo articolo dall'inglese all'italiano. +{{< quote source="May Sarton" src="http://en.wikipedia.org/wiki/May_Sarton" >}} +La solitudine è la povertà interiore, l’isolamento è la ricchezza interiore. +{{< /quote >}}
\ No newline at end of file diff --git a/content/it/articles/baking-programs/index.md b/content/it/articles/baking-programs/index.md index d2aa92f..4f2d2fb 100644 --- a/content/it/articles/baking-programs/index.md +++ b/content/it/articles/baking-programs/index.md @@ -1,12 +1,15 @@ +++ -title = "baking programs" +title = "programmi di cottura al forno" + date = "2019-01-02T15:36:49+00:00" -draft = false +author = "Danilo M." type = "life" -tags = ["slackbuild"] +excerpt = "preparare una torta e compilare un programma dai sorgenti hanno un sacco di cose in comune, ed entrambi vi lasceranno soddisfatti una volta che hanno finito di cuocere" image = "/uppies/2019/01/bake-a-cake.jpg" -author = "Danilo M." +categories = [ "DIY"] +tags = ["linux", "slackbuild"] +++ +Compilare programmi dà sempre l’impressione di preparare una torta: si cercano i file necessari, si controllano le dipendenze e poi si avvia lo script di compilazione. A questo punto, si lascia il computer per andare a prendere qualcosa da bere e, quando si torna, si scopre che c’è un errore. Controllando, ci si rende conto di aver dimenticato una dipendenza: è come se si fosse messa la torta in forno, la cottura fosse iniziata e, dopo un po’, ci si accorgesse che si è dimenticato di aggiungere lo zucchero all’impasto. -TODO: Tradurre questo articolo dall'inglese all'italiano. +Negli ultimi giorni ho dovuto compilare diversi programmi e alla fine ho dovuto apportare molte modifiche. Per compilare Audacity, ho dovuto aggiungere sei patch prima che lo script riuscisse a completare la compilazione correttamente, e oggi è successo lo stesso con Qpdfview: ancora errori relativi alle dipendenze, ma alla fine ci sono riuscito e, ve lo dico, quando si torna al computer e lo script è terminato, mostrando che il programma è stato installato, è quasi come sentire il profumo della torta appena sfornata, pronta per essere gustata.
\ No newline at end of file diff --git a/content/it/articles/bash-notes/index.md b/content/it/articles/bash-notes/index.md index 1e88c06..4205449 100644 --- a/content/it/articles/bash-notes/index.md +++ b/content/it/articles/bash-notes/index.md @@ -1,11 +1,218 @@ +++ title = "Bash Notes" date = "2023-04-07T11:20:20+02:00" -draft = true -type = "life" -tags = [] +type = "tech" author = "Danilo M." +excerpt = "Un'app 'sticky notes', scritta in bash per i patiti della shell." +categories = [ "DIY", "Code"] +tags = ["linux", "bash"] +++ +# bash notes -TODO: Tradurre questo articolo dall'inglese all'italiano.
\ No newline at end of file +## uno script semplice per prendere appunti, scritto in bash + +Mi sono reso conto di aver bisogno di un modo semplice per prendere appunti e, poiché le altre soluzioni disponibili non soddisfacevano le mie esigenze, ho deciso di scrivere il mio script. + +Si tratta di un semplice script bash, l'unica dipendenza (per ora) è [jq](https://stedolan.github.io/jq/). + +Ecco tutte le funzioni disponibili: + +```bash +Usage: + notes.sh [PARAMS] ... + +notes parameters are: + -h | --help : This help text + -p | --plain : Output is in plain text + (without this option the output is formatted) + (this option must precede all others) + -l | --list : List existing notes + -a | --add=["<title>"] : Add new note + -e | --edit=[<note>] : Edit note + -d | --delete=[<note> | all] : Delete single note or all notes at once + -s | --show=[<note>] : Display note using your favourite PAGER + -r | --restore=[<dir>] : Restore a previous backup from dir + -v | --version : Print version + --userconf : Export User config file + --backup [<dest>] : Backup your data in your destination folder + +if a non option is passed and is a valid note ID, the note will be displayed. +``` + +Tutte le funzionalità di base sono presenti e funzionanti; probabilmente necessita di qualche rifinitura e di alcuni test, quindi, se volete provarlo, fatemi sapere cosa ne pensate. + +### Impostazioni + +Quando lo eseguite per la prima volta, notes.sh creerà tutti i file necessari per il suo funzionamento. +Per impostazione predefinita, la directory verrà popolata in `~/.local/share/bash-notes`. + +Se volete modificare le impostazioni predefinite, potete esportare un file di configurazione utente eseguendo: + +```bash +notes.sh --userconf +``` + +E avrete tutte le vostre impostazioni in `~/.config/bash-notes.rc`. Questo file verrà caricato ogni volta che eseguite lo script. + +Potete modificare tutte queste impostazioni modificando il file: + +```bash +# Binaries to use +JQ=${JQ:-/usr/bin/jq} +EDITOR=${EDITOR:-/usr/bin/vim} +TERMINAL=${TERMINAL:-/usr/bin/alacritty} +# add options for your terminal. Remember to add the last option to execute +# your editor program, otherwise the script will fail. +# see example in the addnote function +TERM_OPTS="--class notes --title notes -e " +# Setting PAGER here overrides whatever is set in your default shell +# comment this option to use your default pager if set in your shell. +PAGER=${PAGER:-/usr/bin/more} + +# set this to true to have output in plain text +# or use the -p option on the command line before every other option +PLAIN=false +# base directory for program files +BASEDIR=${BASEDIR:-~/.local/share/bash-notes} +# notes database in json format +DB=${BASEDIR}/db.json +# directory containing the actual notes +NOTESDIR=${BASEDIR}/notes +``` + +La maggior parte sono piuttosto autoesplicative; l'unica che potrebbe richiedere chiarimenti è `TERM_OPTS`, che viene utilizzata per impostare la finestra del terminale in cui verrà eseguito l'editor durante la scrittura della nota. + +È necessario prestare particolare attenzione quando si specificano le opzioni; nel mio caso, utilizzando [alacritty](https://github.com/alacritty/alacritty), l'opzione che consente di eseguire un software nella finestra appena creata è `-e`, quindi devo specificarla come ultima opzione. + +### Funzionalità + +bash-notes può: + +* scrivere una nuova nota `--add="Your note title"` o, in breve, `-a"Your note title"` +* modificare una nota esistente `--edit=[note ID]`, versione breve `-e[note ID]` +* eliminare una nota `--delete=[note ID]` o `-d[note ID]` +* eliminare tutte le note `--delete=all` o `-dall` +* elencare le note esistenti `--list` o `-l` in forma abbreviata +* visualizzare una nota `--show=[note ID]` o `-s[note ID]`. + +È anche possibile semplicemente passare [ID nota] come argomento allo script e verrà visualizzata la nota corrispondente. + +```bash +notes.sh 1 +``` + +L'*ID nota* viene assegnato quando viene creata la nota ed è così che si fa riferimento alla nota nel programma. + +##### Elenco semplice vs. "colorato" + +L'opzione `--plain` o `-p`, in forma abbreviata, determina come viene formattata l'output dello script. Ecco un esempio dell'elenco di tutte le note: + +```bash +notes.sh -l +listing all notes + +[ID] [TITLE] [CREATED] +[1] ciao nota 25/03/2023 18:53 +0100CET +[2] hello there 25/03/2023 19:02 +0100CET +``` + +Ed ecco lo stesso elenco con l'opzione "plain": + +```bash +notes.sh -pl +1 - ciao nota - 25/03/2023 18:53 +0100CET +2 - hello there - 25/03/2023 19:02 +0100CET +``` + +Al momento è solo una prova di concetto, ma l'idea è di utilizzare un output più interessante, magari utilizzando il markup, e di semplificarlo in modalità "plain". In fin dei conti, è ancora un progetto in corso. +L'opzione "plain" deve precedere tutte le altre opzioni, altrimenti non funzionerà. Cercherò di risolvere questo problema in futuro. + +Mi piacerebbe implementare una sorta di funzionalità di ricerca, ma devo ancora studiare la questione. + +##### Backup + +A partire dalla versione 0.3, questo script può anche gestire i backup di tutte le vostre note. Potete specificare una cartella di backup con: + +```bash +notes.sh --backup=/some/dir +``` + +e lo script creerà la directory se non esiste e farà il backup di tutti i vostri dati, incluso il file rc, se ne avete creato uno. + +Se volete ripristinare un backup, potete farlo con: + +```bash +notes.sh --restore=/some/dir +``` + +E lo script si occuperà di ripristinare tutto al suo posto. + +{{< callout type="warning" title="Heads up" >}} + +Tenete presente che tutte le vostre note esistenti verranno sovrascritte durante il processo. +{{< /callout >}} + +### Installazione + +{{< actions inclass="border-2 shadow-xl mx-auto" outclass="flex justify-center" url="https://git.danix.xyz/?p=bash-notes.git;a=summary" desc="Download from Git Repository" >}} + +Basta copiare lo script nella vostra cartella $PATH e renderlo eseguibile. Ecco un esempio: + +```bash +mv notes.sh ~/bin/ +chmod 755 ~/bin/notes.sh +``` + +Adattatelo alle vostre esigenze. + +La prima volta che eseguite lo script, questo si occuperà di creare tutti i file e le cartelle necessari nelle directory standard. + +### Debugging + +Se lo script non funziona per qualche motivo, potete attivare il debugging eseguendo lo script in questo modo: + +```bash +DEBUG=true notes.sh [options] +``` + +E potrete quindi controllare tutto ciò che è accaduto nel file di log all'indirizzo `/tmp/debug_bash-notes.log`. + +### Visione + +Ok, forse "visione" è un termine un po' pretenzioso, ma ho scritto questo script per utilizzarlo nel mio flusso di lavoro quotidiano con [rofi](https://github.com/davatorium/rofi) e [i3wm](https://github.com/i3/i3). Adatterò il suo funzionamento per soddisfare al meglio questa mia esigenza. + +Ci sono ovviamente alcune cose che mi piacerebbe aggiungere, ma il mio obiettivo principale è che funzioni nel modo in cui ho inteso utilizzarlo. + +### COSA FARE + +* aggiungere un modo per cercare le note +* ~~aggiungere un modo per visualizzare una nota senza eseguire vim~~ *(fatto nella versione 0.3)* +* supporto per markdown? + * forse implementare una funzione di esportazione che crei il file HTML o PDF dalla nota (pandoc??) +* scrivere uno script di completamento bash per abilitare il completamento automatico nella shell +* altre idee potrebbero nascere [...] + +### Collaborazione + +Significherebbe molto ricevere un feedback, patch se vi sentite di contribuire. Non mi aspetto molto, dato che si tratta di un progetto personale, ma sentitevi liberi di interagire quanto volete. + +### ChangeLog + +* v0.3 - gestione dei backup. Alcuni miglioramenti dell'interfaccia utente + * creazione e ripristino dei backup di tutte le note e delle impostazioni. + * visualizzazione delle note utilizzando la variabile PAGER predefinita o definendo il proprio programma. +* v0.2 - implementato il debugging + * ora è possibile generare un file di log di debug nel caso in cui qualcosa non funzioni +* v0.1 - primo upload pubblico + * tutte le funzionalità principali sono presenti e funzionanti + +### Responsabile + +* [danix](https://danix.xyz) - sono solo io, in realtà... + +### LICENZA + +{{< callout type="info" >}} +bash-notes © 2023 by danix è concesso in licenza sotto CC BY-NC 4.0. Per visualizzare una copia di questa licenza, visitate http://creativecommons.org/licenses/by-nc/4.0/. +{{< /callout >}}
\ No newline at end of file diff --git a/content/it/articles/cad-designing-in-gnu-linux/index.md b/content/it/articles/cad-designing-in-gnu-linux/index.md index 3ebf071..4eac035 100644 --- a/content/it/articles/cad-designing-in-gnu-linux/index.md +++ b/content/it/articles/cad-designing-in-gnu-linux/index.md @@ -1,12 +1,71 @@ +++ -title = "CAD designing in GNU/Linux" -date = "2021-05-01T17:51:58+00:00" - +title = "Progettazione CAD in GNU/Linux" +author = "Danilo M." type = "tech" -tags = ["3D printing", "cad", "cura", "fusion360", "slicer", "solvespace"] +obsolete = true +date = "2021-05-01T17:51:58+00:00" +excerpt = "Quali sono le opzioni software disponibili quando si utilizza una stampante 3D su Linux?" image = "/uppies/2021/05/PXL_20210501_114542849.jpg" -author = "Danilo M." +categories = [ "3D Printing", "DIY"] +tags = ["cad", "cura", "fusion360", "slicer", "solvespace", "linux"] +typora-root-url = "../../static" +++ -TODO: Tradurre questo articolo dall'inglese all'italiano. +{{< quote source="semicit. Eminem" >}} + Guess who's back + back again + danix's back + tell your friends +{{< /quote >}} + +Quindi, sono tornato a scrivere su questo blog. È passato molto tempo, ho attraversato un periodo piuttosto difficile e sono successe molte cose a livello personale che mi hanno distratto dal blogging. + +Una delle cose che ho introdotto nella mia vita è una stampante 3D. Sono il fiero proprietario di una Ender3 Pro di Creality. + +L'ho avuta per qualche mese e sono piuttosto soddisfatto del mio acquisto, perché si è rivelata un hobby molto utile e, anche se ho iniziato questo hobby utilizzando strumenti disponibili per Windows, mi sto lentamente riabituando a GNU/Linux. + +<!--more--> + +## Slicing + +Il software che usi principalmente con una stampante 3D è uno slicer, ovvero un programma che prende un rendering 3D dell'oggetto che vuoi stampare e lo divide in molti strati, impilandoli uno sopra l'altro. Puoi manipolare gli strati in vari modi per modificare le proprietà dell'oggetto stampato finale. + +{{< image class="max-w-md mx-auto" caption="Ultimaker Cura 4.9 main interface" src="/uppies/2021/05/2021-04-25-183336_1366x768_scrot.png" alt="Screenshot from Ultimaker Cura 4.9 main interface" >}}{{< /image >}} + +Ho scelto [Ultimaker Cura](https://ultimaker.com/software/ultimaker-cura) come slicer principale. Ho iniziato a usarlo e ho scoperto che è abbastanza facile da usare, anche per un principiante come me, ma allo stesso tempo offre all'utente molte possibilità di personalizzazione, man mano che si impara a usarlo. + +Finora tutto bene. Cura è disponibile per Windows, Mac e GNU/Linux, quindi ho scaricato il pacchetto appImage e devo dire che il tempo di caricamento è ancora più veloce che su Windows. Ho aggiunto alcuni plugin e ho elaborato diversi file e sono molto soddisfatto delle sue prestazioni. + +## Progettazione CAD + +Ora, tutto andrebbe bene così com'è, se si intendesse utilizzare solo i file che si trovano su Internet, il che è un vantaggio notevole, considerando che esistono siti come [thingiverse.com](https://www.thingiverse.com) o [myminifactory.com](https://www.myminifactory.com), dove è possibile trovare letteralmente milioni di file pronti per essere elaborati e stampati. + +La situazione è diversa se si desidera progettare un oggetto da stampare. In tal caso, sarà necessario un software CAD. + +Su Windows, la mia scelta è caduta immediatamente su Fusion360, non solo perché è di Autodesk, la stessa azienda che crea AutoCAD, lo standard di fatto nel settore per il CAD meccanico, ma soprattutto perché Fusion360 offre un abbonamento gratuito annuale per hobbisti e studenti. + +Un altro buon motivo per scegliere Fusion360 è l'enorme quantità di tutorial che si possono trovare sul web su come affrontare la progettazione CAD con questo software. È davvero ottimo per i principianti, in quanto offre una curva di apprendimento ancora più semplice. + +Purtroppo, Fusion360 non è disponibile su GNU/Linux, ed è questo il motivo principale per cui ho deciso di cercare un'alternativa valida. + +Un altro ottimo motivo per non usare Fusion è il fatto che tutti i tuoi file vengono caricati sul cloud e, nella versione gratuita, sei limitato a un massimo di 10 file modificabili alla volta, il che potrebbe sembrare molto, ma potrebbe facilmente diventare troppo pochi, a seconda di cosa stai lavorando. In ogni caso, dopo aver fatto qualche ricerca, ho trovato una soluzione! + +## Ecco SolveSpace + +{{< image class="max-w-md mx-auto" caption="solvespace interface" src="/uppies/2021/05/2021-04-25-190246_1366x768_scrot.png" alt="Screenshot from solvespace interface" >}}{{< /image >}} + +[SolveSpace](https://solvespace.com/index.pl) è un software CAD parametrico 2D/3D, è completamente gratuito, con licenza GPLv3 ed è disponibile per Windows, Mac e, naturalmente, GNU/Linux. + +{{< video class="max-w-md mx-auto" src="/uppies/2021/05/solvespace_demo.webm" >}} + +Ho guardato questo video introduttivo e sono stato in grado di imparare a usarlo e iniziare a progettare in pochi minuti. È molto semplice e, anche se fa le cose in modo leggermente diverso da Fusion, è comunque molto comodo da usare. + +Lo sviluppo è molto attivo e questo mese è stata rilasciata l'ultima versione stabile, la 3.0, e sono riuscito a compilarla senza problemi sul mio Slackware64-current. Probabilmente, una volta che Slackware64 raggiungerà la versione stabile 15.0, invierò lo slackbuild alla mailing list [SBo](https://slackbuilds.org) e vedrò se lo renderanno disponibile. Nel frattempo, se qualcuno è interessato, può scrivermi sui miei social media e cercherò di aiutarlo al meglio. + +## Pacchetto Slackware + +Dato che ho creato il pacchetto per mio uso personale, perché non condividerlo con il mondo? +Non l'ho inviato a SBo perché uso git per ottenere le fonti e questo non è conforme alle loro linee guida. + +Grazie per essere passato e ci vediamo al prossimo articolo ;)
\ No newline at end of file diff --git a/content/it/articles/ceasar-quote/index.md b/content/it/articles/ceasar-quote/index.md index ccf5e7f..9fffea3 100644 --- a/content/it/articles/ceasar-quote/index.md +++ b/content/it/articles/ceasar-quote/index.md @@ -1,12 +1,12 @@ +++ -title = "Ceasar quote" -date = "2011-07-28T19:03:39+00:00" - -type = "life" -tags = ["Caesar", "quote"] - +title = "Citazione di Cesare" author = "Danilo M." - +type = "quote" +date = "2011-07-28T19:03:39+00:00" +excerpt = "Una citazione di Giulio Cesare." +categories = [ "Blogging"] +tags = ["quotes", "Caesar"] +++ - -TODO: Tradurre questo articolo dall'inglese all'italiano. +{{< quote source="Giulio Cesare" >}} +Ciò che desideriamo, lo crediamo facilmente, e ciò che noi stessi pensiamo, immaginiamo che lo pensino anche gli altri. +{{< /quote >}}
\ No newline at end of file diff --git a/content/it/articles/come-funziona-questo-sito/index.md b/content/it/articles/come-funziona-questo-sito/index.md deleted file mode 100644 index 0477e83..0000000 --- a/content/it/articles/come-funziona-questo-sito/index.md +++ /dev/null @@ -1,13 +0,0 @@ -+++ -title = "Come Funziona Questo Sito" -date = "2024-11-12T11:12:25+01:00" -draft = true -type = "tech" -author = "Danilo M." -excerpt = "Questo sito è sviluppato con HUGO, ecco come funziona." -categories = [ "DIY", "Code", "Blogging"] -tags = [ "Hugo", "development", "web"] -typora-root-url = "../../static" -+++ - -Questo sito è sviluppato con HUGO, un framework per costruire siti "statici".
\ No newline at end of file diff --git a/content/it/articles/conquista-la-folla/index.md b/content/it/articles/conquista-la-folla/index.md index 11bd6ef..5cb11a9 100644 --- a/content/it/articles/conquista-la-folla/index.md +++ b/content/it/articles/conquista-la-folla/index.md @@ -2,12 +2,12 @@ title = "conquista la folla.." author = "Danilo M." type = "quote" -draft = true date = "2013-04-21T08:17:11+00:00" categories = [ "Blogging"] tags = [ "gladiator", "massimo decimo meridio"] + +++ {{< quote source="Massimo X Meridio" >}} -conquisterò la folla… gli darò qualcosa che non ha mai visto prima +conquisterò la folla… gli darò qualcosa che non ha mai visto prima. {{< /quote >}}
\ No newline at end of file |
