My personal website vittoriogioda.com
blog portfolio personal-website
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

New blog post

vittorio 96d86ff6 637a9225

+2970 -192
+4 -4
404.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/404.html" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/404.html" title="English" /> 22 22 23 23 24 24
+4 -4
categories/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/categories/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/categories/" title="English" /> 22 22 23 23 24 24
+1 -1
categories/index.xml
··· 5 5 <link>https://vittoriogioda.com/categories/</link> 6 6 <description>Recent content in Categories on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="https://vittoriogioda.com/categories/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en-us</language><atom:link href="https://vittoriogioda.com/categories/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
content/en/posts/linux-out-of-memory/draw.png

This is a binary file and will not be displayed.

+115
content/en/posts/linux-out-of-memory/index.md
··· 1 + --- 2 + title: Linux Ubuntu freeze Firefox 3 + date: 2026-04-28 4 + draft: false 5 + description: 'How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap.' 6 + isStarred: false 7 + toc: false 8 + --- 9 + 10 + ## The problem 11 + 12 + Third time it’s happened. I open a few tabs in Firefox, work for a couple of hours, and at some point, the system locks up completely. Nothing works, no mouse, no keyboard. The only option is to hold down the power button: 13 + 14 + ``` 15 + Out of memory: Killed process 154968 (Isolated Web Co) 16 + total-vm:8286172kB, anon-rss:5154148kB 17 + ``` 18 + 19 + **Firefox was eating 5GB of RAM.** A single "Isolated Web Co" process (which is basically a Firefox tab or content process). 20 + 21 + Using `last -x`, I saw the system had crashed at 11:12, and there were no OOM messages in the logs before the crash. This means the system froze so quickly that the OOM killer didn't have time to intervene. 22 + 23 + My config: 24 + - 16GB RAM 25 + - 4GB swap 26 + - swappiness at 60 (default) 27 + 28 + Too little swap, and when RAM fills up quickly, the kernel doesn't have time to kill processes before everything stalls. 29 + 30 + I looked around to understand how to better configure the system. Here are some useful things: 31 + 32 + ### Swap size 33 + 34 + [Red Hat Documentation](https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/managing_storage_devices/getting-started-with-swap_managing-storage-devices) and [TheLinuxCode](https://thelinuxcode.com/change_swap_size_ubuntu/) state that for systems with more than 8GB of RAM, you should have at least 4GB of swap, but if you experience memory pressure, it’s better to go with 8GB. I was exactly at 4GB, so I decided to increase it to 8GB. 35 + 36 + ### Earlyoom 37 + 38 + Then I discovered [earlyoom](https://github.com/rfjakob/earlyoom). This is a daemon that monitors memory and kills processes *before* the system locks up. Unlike the kernel's OOM killer which intervenes when it's already too late, earlyoom acts when free memory drops below a certain threshold. 39 + 40 + [This article by OneUptime](https://oneuptime.com/blog/post/2026-03-02-how-to-use-earlyoom-for-proactive-oom-prevention-on-ubuntu/view) explains how to configure it for desktop, using the `--prefer` and `--avoid` options to decide what to kill and what to protect. 41 + 42 + ### Zswap 43 + 44 + Finally, I found [zswap](https://chrisdown.name/2026/03/24/zswap-vs-zram-when-to-use-what.html). It is a compressed cache that sits between RAM and disk swap. When memory fills up, zswap compresses inactive pages instead of writing them immediately to disk. Compared to pure zram, zswap integrates better with existing disk swap and doesn't break hibernation. 45 + 46 + On [HowToGeek](https://www.howtogeek.com/even-if-you-have-16gb-of-ram-this-one-compressed-swap-trick-makes-linux-significantly-smoother/) there is a very clear explanation of why zswap helps even on systems with "enough" RAM. 47 + 48 + ## Solutions applied 49 + 50 + ### 1. Increased swap to 8GB 51 + 52 + ```bash 53 + sudo swapoff -a 54 + sudo rm /swap.img 55 + sudo fallocate -l 8G /swap.img 56 + sudo chmod 600 /swap.img 57 + sudo mkswap /swap.img 58 + sudo swapon /swap.img 59 + ``` 60 + 61 + ### 2. Set swappiness to 10 62 + 63 + This way, the kernel prefers using RAM and only uses swap when truly necessary: 64 + 65 + ```bash 66 + echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf 67 + sudo sysctl -p 68 + ``` 69 + 70 + ### 3. Installed and configured earlyoom 71 + 72 + ```bash 73 + sudo apt install -y earlyoom 74 + ``` 75 + 76 + Then `/etc/default/earlyoom`: 77 + 78 + ```bash 79 + EARLYOOM_ARGS="-m 5 -s 5 -k -n \ 80 + --prefer '(^|/)(firefox|chrome|chromium|electron|Isolated Web Co|Web Content)' \ 81 + --avoid '(^|/)(gnome-shell|Xorg|Xwayland|systemd|sshd|gnome-session|gdm|dbus-daemon)'" 82 + ``` 83 + 84 + This tells earlyoom to: 85 + - Intervene when RAM or swap drops below 5% 86 + - Prefer killing Firefox, Chrome, Electron (the main culprits) 87 + - Protect gnome-shell, Xorg, and system processes 88 + 89 + ### 4. Enabled zswap 90 + 91 + I modified `/etc/default/grub` adding these parameters to the kernel: 92 + 93 + ``` 94 + zswap.enabled=1 zswap.compressor=zstd zswap.max_pool_percent=25 zswap.zpool=z3fold 95 + ``` 96 + 97 + Then `sudo update-grub`. 98 + 99 + ## How my system is configured now 100 + 101 + ![Draw](draw.png) 102 + 103 + ## Result 104 + 105 + Now if Firefox decides to eat 5GB of RAM for a runaway tab: 106 + 1. zswap compresses inactive pages, gaining time 107 + 2. If that's not enough, disk swap absorbs the hit 108 + 3. If still not enough, earlyoom kills Firefox BEFORE the system freezes 109 + 4. No freezes 110 + 111 + I’ve finished configuring everything and I’m writing this post. I hope it’s useful to someone having the same problem. 112 + 113 + --- 114 + 115 + *Configuration tested on Ubuntu 24.04.4 LTS (Noble Numbat) with 2 x 8 GB DRAM DDR4 at 3200 MHz. Links lead to the sources I used to understand the setup.*
-13
content/en/posts/test-post.md
··· 1 - --- 2 - title: Writing posts 3 - date: 2026-02-26T21:52:11+01:00 4 - draft: false 5 - description: 'Description is incredible' 6 - isStarred: false 7 - toc: false 8 - --- 9 - 10 - Writing is fun. 11 - Writing a blog is fun. 12 - 13 - Fun is **fun**.
+3
content/it/posts/_index.md
··· 1 + --- 2 + title: "Posts" 3 + ---
content/it/posts/linux-out-of-memory/draw.png

This is a binary file and will not be displayed.

+113
content/it/posts/linux-out-of-memory/index.md
··· 1 + --- 2 + title: Linux Ubuntu freeze Firefox 3 + date: 2026-04-28 4 + draft: false 5 + description: 'Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap.' 6 + isStarred: false 7 + toc: false 8 + --- 9 + 10 + ## Il problema 11 + 12 + Terza volta che succede. Apro un po' di tab su Firefox, lavoro un paio d'ore, e a un certo punto il sistema si inchioda completamente. Niente funziona, niente mouse, niente tastiera. L'unica è tenere premuto il power button: 13 + 14 + ``` 15 + Out of memory: Killed process 154968 (Isolated Web Co) 16 + total-vm:8286172kB, anon-rss:5154148kB 17 + ``` 18 + 19 + **Firefox si stava mangiando 5GB di RAM.** Un singolo processo "Isolated Web Co" (che poi è tipo un tab o un content process di Firefox) 20 + 21 + Con `last -x` ho anche visto che il sistema era crashato alle 11:12, e nei log non c'era nessun messaggio OOM prima del crash. Questo significa che il sistema si è congelato così velocemente che l'OOM killer non ha fatto in tempo a intervenire. 22 + 23 + La mia config: 24 + - 16GB di RAM 25 + - 4GB di swap 26 + - swappiness a 60 (default) 27 + 28 + Troppo poco swap, e quando la RAM si riempie velocemente il kernel non fa in tempo a uccidere i processi prima che tutto si blocchi. 29 + 30 + Ho cercato in giro per capire come configurare meglio il sistema. Ecco un po' di cose utili: 31 + 32 + ### Swap size 33 + 34 + Su [Red Hat Documentation](https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/managing_storage_devices/getting-started-with-swap_managing-storage-devices) e [TheLinuxCode](https://thelinuxcode.com/change_swap_size_ubuntu/) dicono che per sistemi con più di 8GB di RAM, devi avere almeno 4GB di swap, ma se hai problemi di memory pressure è meglio andare sui 8GB. Bene io ero proprio a 4GB, quindi ho deciso di aumentare a 8GB. 35 + 36 + ### Earlyoom 37 + 38 + Poi ho scoperto [earlyoom](https://github.com/rfjakob/earlyoom). Questo è un daemon che monitora la memoria e uccide i processi *prima* che il sistema si blocchi. A differenza dell'OOM killer del kernel che interviene quando è già troppo tardi, earlyoom agisce quando la memoria libera scende sotto una certa soglia. 39 + 40 + Su [questo articolo di OneUptime](https://oneuptime.com/blog/post/2026-03-02-how-to-use-earlyoom-for-proactive-oom-prevention-on-ubuntu/view) spiegano come configurarlo per desktop, con le opzioni `--prefer` e `--avoid` per decidere cosa uccidere e cosa proteggere. 41 + 42 + Infine ho trovato [zswap](https://chrisdown.name/2026/03/24/zswap-vs-zram-when-to-use-what.html). È tipo una cache compressa che sta tra la RAM e lo swap su disco. Quando la memoria si riempie, zswap comprime le pagine inattive invece di scriverle subito su disco. Rispetto a zram puro, zswap si integra meglio con lo swap su disco esistente e non rompe l'ibernazione. 43 + 44 + Su [HowToGeek](https://www.howtogeek.com/even-if-you-have-16gb-of-ram-this-one-compressed-swap-trick-makes-linux-significantly-smoother/) c'è una spiegazione molto chiara del perché zswap aiuta anche su sistemi con "abbastanza" RAM. 45 + 46 + ## Le soluzioni che ho applicato 47 + 48 + ### 1. Aumentato lo swap a 8GB 49 + 50 + ```bash 51 + sudo swapoff -a 52 + sudo rm /swap.img 53 + sudo fallocate -l 8G /swap.img 54 + sudo chmod 600 /swap.img 55 + sudo mkswap /swap.img 56 + sudo swapon /swap.img 57 + ``` 58 + 59 + ### 2. Impostato swappiness a 10 60 + 61 + Così il kernel preferisce usare la RAM e usa lo swap solo quando serve davvero: 62 + 63 + ```bash 64 + echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf 65 + sudo sysctl -p 66 + ``` 67 + 68 + ### 3. Installato e configurato earlyoom 69 + 70 + ```bash 71 + sudo apt install -y earlyoom 72 + ``` 73 + 74 + Poi `/etc/default/earlyoom`: 75 + 76 + ```bash 77 + EARLYOOM_ARGS="-m 5 -s 5 -k -n \ 78 + --prefer '(^|/)(firefox|chrome|chromium|electron|Isolated Web Co|Web Content)' \ 79 + --avoid '(^|/)(gnome-shell|Xorg|Xwayland|systemd|sshd|gnome-session|gdm|dbus-daemon)'" 80 + ``` 81 + 82 + Questo dice a earlyoom di: 83 + - Intervenire quando RAM o swap scendono sotto il 5% 84 + - Preferire uccidere Firefox, Chrome, Electron (i colpevoli principali) 85 + - Proteggere gnome-shell, Xorg e i processi di sistema 86 + 87 + ### 4. Abilitato zswap 88 + 89 + Ho modificato `/etc/default/grub` aggiungendo questi parametri al kernel: 90 + 91 + ``` 92 + zswap.enabled=1 zswap.compressor=zstd zswap.max_pool_percent=25 zswap.zpool=z3fold 93 + ``` 94 + 95 + Poi `sudo update-grub` e via. 96 + 97 + ## Come è configurato ora il mio sistema 98 + 99 + ![Draw](draw.png) 100 + 101 + ## Risultato 102 + 103 + Ora se Firefox decide di mangiarsi 5GB di RAM per un tab impazzito: 104 + 1. zswap comprime le pagine inattive, guadagnando tempo 105 + 2. Se non basta, il disk swap assorbe il colpo 106 + 3. Se ancora non basta, earlyoom uccide Firefox PRIMA che il sistema si blocchi 107 + 4. Niente freeze 108 + 109 + Ho finito di configurare tutto e sto scrivendo questo post. Spero sia utile a qualcuno che ha lo stesso problema. 110 + 111 + --- 112 + 113 + *Configurazione testata su Ubuntu 24.04.4 LTS (Noble Numbat) con 2 x 8 GB DRAM DDR4 a 3200 MHz. I link sono alle fonti che ho usato per capire come configurare il tutto.*
+4 -4
cv/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/cv/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/cv/" title="English" /> 22 22 23 23 24 24
+18 -11
hugo.toml
··· 5 5 languageCode = 'en-us' 6 6 7 7 # This defines how dates are formatted 8 - defaultContentLanguage = "en-gb" 8 + defaultContentLanguage = "en-us" 9 9 10 10 # Enable emojis globally 11 11 enableEmoji = true ··· 48 48 ordered = false # generates <ul> instead of <ol> 49 49 50 50 ############################## English language ################################ 51 - [Languages.en-gb] 51 + [Languages.en-us] 52 52 languageName = "English" 53 - languageCode = "en-gb" 53 + languageCode = "en" 54 54 contentDir = "content/en" 55 55 weight = 1 56 56 57 - [Languages.en-gb.menu] 58 - [[Languages.en-gb.menu.main]] 57 + [Languages.en-us.menu] 58 + [[Languages.en-us.menu.main]] 59 59 # The page reference (pageRef) is useful for menu highlighting 60 60 # When pageRef is set, setting `url` is optional; it will be used as a fallback if the page is not found. 61 61 pageRef="/" 62 62 name = 'Home' 63 63 url = '/' 64 64 weight = 10 65 - [[Languages.en-gb.menu.main]] 65 + [[Languages.en-us.menu.main]] 66 66 pageRef="posts" 67 67 name = 'Posts' 68 68 url = '/posts/' 69 69 weight = 20 70 70 71 71 72 - [[Languages.en-gb.menu.main]] 72 + [[Languages.en-us.menu.main]] 73 73 pageRef="collection" 74 74 name = 'Collection' 75 75 url = '/collection/' 76 76 weight = 30 77 77 78 - [[Languages.en-gb.menu.main]] 78 + [[Languages.en-us.menu.main]] 79 79 pageRef="cv" 80 80 name = 'CV' 81 81 url = '/cv/' 82 82 weight = 40 83 83 84 - [Languages.en-gb.params] 84 + [Languages.en-us.params] 85 85 sitename = "Vittorio Gioda" 86 86 defaultColor = "dark" # set color mode: dark, light, auto 87 87 # Setting it to 'auto' applies the color scheme based on the visitor's device color preference.If you don't specify anything, ignore this parameter, or leave it blank, ··· 104 104 # full - includes full blog post in the RSS feed. Generated using Hugo .Content . 105 105 # By default (or if nothing is specified), summary is used. 106 106 107 - [Languages.en-gb.params.author] 107 + [Languages.en-us.params.author] 108 108 avatar = "avatar.jpg" # put the file in assets folder; also ensure that image has same height and width 109 109 # Note: image is not rendered if the resource(avatar image) is not found. No error is displayed. 110 110 intro = "Vittorio Gioda" ··· 112 112 description = "Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" 113 113 114 114 # Allow to override webmanifest options 115 - [Languages.en-gb.params.webmanifest] 115 + [Languages.en-us.params.webmanifest] 116 116 name = "Vittorio Gioda" # will use "params.sitename" or "title" by default 117 117 short_name = "Vittorio Gioda" # same as name 118 118 start_url = "/" # will use homepage url by default ··· 189 189 name = "Good Sleep, Good Learning" 190 190 url = "https://super-memory.com/articles/sleep.htm" 191 191 description = "Healt Research" 192 + 193 + ############################ Italian language ################################ 194 + [Languages.it] 195 + languageName = "Italiano" 196 + languageCode = "it" 197 + contentDir = "content/it" 198 + weight = 2
+4 -4
index.html
··· 1 - <!DOCTYPE html><html lang="en-gb" class="dark"><head><meta charset="utf-8"> 1 + <!DOCTYPE html><html lang="en-us" class="dark"><head><meta charset="utf-8"> 2 2 <meta http-equiv="content-type" content="text/html"> 3 3 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 4 4 ··· 14 14 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 15 15 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 17 - <meta property="og:locale" content="en-gb" /> 18 - <meta name="language" content="en-gb" /> 17 + <meta property="og:locale" content="en-us" /> 18 + <meta name="language" content="en-us" /> 19 19 20 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/" title="English" /> 20 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/" title="English" /> 21 21 22 22 23 23
+1 -1
index.xml
··· 5 5 <link>https://vittoriogioda.com/</link> 6 6 <description>Recent content in Home on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language> 8 + <language>en-us</language> 9 9 <lastBuildDate>Thu, 26 Feb 2026 21:52:11 +0100</lastBuildDate><atom:link href="https://vittoriogioda.com/index.xml" rel="self" type="application/rss+xml" /> 10 10 <item> 11 11 <title>Writing posts</title>
+69
layouts/partials/header.html
··· 1 + <div class="navbar" role="navigation"> 2 + <nav class="menu" aria-label="Main Navigation"> 3 + <div></div> 4 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 5 + <label for="menu-trigger"> 6 + <span class="menu-icon"> 7 + {{ partial "svgs/menu.svg" (dict "height" 25 "width" 25) . }} 8 + </span> 9 + </label> 10 + 11 + <div class="trigger"> 12 + <ul class="trigger-container"> 13 + {{ $currentPage := . }} 14 + {{ range .Site.Menus.main }} 15 + <li> 16 + <a class="menu-link {{ if or ($currentPage.IsMenuCurrent "main" .) 17 + ($currentPage.HasMenuCurrent "main" .) }}active{{ end }}" href="{{ .URL }}"> 18 + {{ .Name }} 19 + </a> 20 + {{ if .HasChildren }} 21 + <ul> 22 + {{ range .Children }} 23 + <li> 24 + <a class="menu-link {{ if $currentPage.IsMenuCurrent "main" . }}active{{ end }}" 25 + href="{{ .URL }}"> 26 + {{ .Name }} 27 + </a> 28 + </li> 29 + {{ end }} 30 + </ul> 31 + {{ end }} 32 + </li> 33 + {{ end }} 34 + <li class="menu-separator"> 35 + <span>|</span> 36 + </li> 37 + {{ if and .IsTranslated (eq .Kind "page") }} 38 + <li> 39 + <select aria-label="Select Language" class="lang-list" id="select-language" onchange="location = this.value;"> 40 + {{ $siteLanguages := .Site.Languages}} 41 + {{ $pageLang := .Page.Lang}} 42 + {{ range .Page.AllTranslations }} 43 + {{ $translation := .}} 44 + {{ range $siteLanguages }} 45 + {{ if eq $translation.Lang .Lang }} 46 + {{ $selected := false }} 47 + {{ if eq $pageLang .Lang}} 48 + <option id="{{ $translation.Language }}" value="{{ $translation.Permalink }}" selected>{{ .LanguageCode | upper }} 49 + </option> 50 + {{ else }} 51 + <option id="{{ $translation.Language }}" value="{{ $translation.Permalink }}">{{ .LanguageCode | upper }}</option> 52 + {{ end }} 53 + {{ end }} 54 + {{ end }} 55 + {{ end }} 56 + </select> 57 + </li> 58 + <li class="menu-separator"> 59 + <span>|</span> 60 + </li> 61 + {{ end }} 62 + </ul> 63 + <a id="mode" href="#"> 64 + {{ partial "svgs/sun.svg" (dict "height" 21 "width" 21 "class" "mode-sunny" "title" "LIGHT") . }} 65 + {{ partial "svgs/sun.svg" (dict "height" 21 "width" 21 "class" "mode-moon" "title" "DARK") . }} 66 + </a> 67 + </div> 68 + </nav> 69 + </div>
+4 -4
pages/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/pages/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/pages/" title="English" /> 22 22 23 23 24 24
+1 -1
pages/index.xml
··· 5 5 <link>https://vittoriogioda.com/pages/</link> 6 6 <description>Recent content in Pages on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="https://vittoriogioda.com/pages/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en-us</language><atom:link href="https://vittoriogioda.com/pages/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+4 -4
posts/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/posts/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/posts/" title="English" /> 22 22 23 23 24 24
+1 -1
posts/index.xml
··· 5 5 <link>https://vittoriogioda.com/posts/</link> 6 6 <description>Recent content in Posts on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language> 8 + <language>en-us</language> 9 9 <lastBuildDate>Thu, 26 Feb 2026 21:52:11 +0100</lastBuildDate><atom:link href="https://vittoriogioda.com/posts/index.xml" rel="self" type="application/rss+xml" /> 10 10 <item> 11 11 <title>Writing posts</title>
+1 -1
posts/page/1/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"> 2 + <html lang="en-us"> 3 3 <head> 4 4 <title>https://vittoriogioda.com/posts/</title> 5 5 <link rel="canonical" href="https://vittoriogioda.com/posts/">
+4 -4
posts/test-post/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Description is incredible" /> 16 16 <meta name="twitter:description" content="Description is incredible" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/posts/test-post/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/posts/test-post/" title="English" /> 22 22 23 23 24 24
+7 -6
public/404.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en" /> 19 + <meta name="language" content="en" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/404.html" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/404.html" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/404.html" title="Italiano" /> 22 24 23 25 24 26 ··· 43 45 44 46 45 47 <link rel="canonical" href="https://vittoriogioda.com/404.html"> 46 - <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 48 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 47 49 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 48 50 49 51 ··· 119 121 <li class="menu-separator"> 120 122 <span>|</span> 121 123 </li> 122 - 123 124 124 125 </ul> 125 126 <a id="mode" href="#">
+7 -6
public/categories/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en" /> 19 + <meta name="language" content="en" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/categories/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/categories/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/categories/" title="Italiano" /> 22 24 23 25 24 26 ··· 45 47 <link rel="canonical" href="https://vittoriogioda.com/categories/"> 46 48 <link href="/categories/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 47 49 <link href="/categories/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 48 - <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 50 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 49 51 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 50 52 51 53 ··· 121 123 <li class="menu-separator"> 122 124 <span>|</span> 123 125 </li> 124 - 125 126 126 127 </ul> 127 128 <a id="mode" href="#">
+1 -1
public/categories/index.xml
··· 5 5 <link>https://vittoriogioda.com/categories/</link> 6 6 <description>Recent content in Categories on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="https://vittoriogioda.com/categories/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en</language><atom:link href="https://vittoriogioda.com/categories/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+5 -6
public/collection/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en" /> 19 + <meta name="language" content="en" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/collection/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/collection/" title="English" /> 22 22 23 23 24 24 ··· 45 45 <link rel="canonical" href="https://vittoriogioda.com/collection/"> 46 46 <link href="/collection/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 47 47 <link href="/collection/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 48 - <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 48 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 49 49 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 50 50 51 51 ··· 121 121 <li class="menu-separator"> 122 122 <span>|</span> 123 123 </li> 124 - 125 124 126 125 </ul> 127 126 <a id="mode" href="#">
+1 -1
public/collection/index.xml
··· 5 5 <link>https://vittoriogioda.com/collection/</link> 6 6 <description>Recent content in Collection on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="https://vittoriogioda.com/collection/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en</language><atom:link href="https://vittoriogioda.com/collection/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+4 -4
public/collections/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8"> 2 + <html lang="en-us"><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="http://localhost:1313/collections/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="http://localhost:1313/collections/" title="English" /> 22 22 23 23 24 24
+1 -1
public/collections/index.xml
··· 5 5 <link>http://localhost:1313/collections/</link> 6 6 <description>Recent content in Collection on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="http://localhost:1313/collections/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en-us</language><atom:link href="http://localhost:1313/collections/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+5 -6
public/cv/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en" /> 19 + <meta name="language" content="en" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/cv/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/cv/" title="English" /> 22 22 23 23 24 24 ··· 51 51 52 52 53 53 <link rel="canonical" href="https://vittoriogioda.com/cv/"> 54 - <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 54 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 55 55 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 56 56 57 57 ··· 127 127 <li class="menu-separator"> 128 128 <span>|</span> 129 129 </li> 130 - 131 130 132 131 </ul> 133 132 <a id="mode" href="#">
+10
public/en-gb/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="en-us"> 3 + <head> 4 + <title>http://localhost:1313/</title> 5 + <link rel="canonical" href="http://localhost:1313/"> 6 + <meta name="robots" content="noindex"> 7 + <meta charset="utf-8"> 8 + <meta http-equiv="refresh" content="0; url=http://localhost:1313/"> 9 + </head> 10 + </html>
+72
public/en-gb/sitemap.xml
··· 1 + <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 + <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" 3 + xmlns:xhtml="http://www.w3.org/1999/xhtml"> 4 + <url> 5 + <loc>http://localhost:1313/</loc> 6 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 7 + <xhtml:link 8 + rel="alternate" 9 + hreflang="it" 10 + href="http://localhost:1313/it/" 11 + /> 12 + <xhtml:link 13 + rel="alternate" 14 + hreflang="en-us" 15 + href="http://localhost:1313/" 16 + /> 17 + </url><url> 18 + <loc>http://localhost:1313/posts/linux-out-of-memory/</loc> 19 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 20 + <xhtml:link 21 + rel="alternate" 22 + hreflang="it" 23 + href="http://localhost:1313/it/posts/linux-out-of-memory/" 24 + /> 25 + <xhtml:link 26 + rel="alternate" 27 + hreflang="en-us" 28 + href="http://localhost:1313/posts/linux-out-of-memory/" 29 + /> 30 + </url><url> 31 + <loc>http://localhost:1313/posts/</loc> 32 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 33 + <xhtml:link 34 + rel="alternate" 35 + hreflang="it" 36 + href="http://localhost:1313/it/posts/" 37 + /> 38 + <xhtml:link 39 + rel="alternate" 40 + hreflang="en-us" 41 + href="http://localhost:1313/posts/" 42 + /> 43 + </url><url> 44 + <loc>http://localhost:1313/categories/</loc> 45 + <xhtml:link 46 + rel="alternate" 47 + hreflang="it" 48 + href="http://localhost:1313/it/categories/" 49 + /> 50 + <xhtml:link 51 + rel="alternate" 52 + hreflang="en-us" 53 + href="http://localhost:1313/categories/" 54 + /> 55 + </url><url> 56 + <loc>http://localhost:1313/collection/</loc> 57 + </url><url> 58 + <loc>http://localhost:1313/cv/</loc> 59 + </url><url> 60 + <loc>http://localhost:1313/tags/</loc> 61 + <xhtml:link 62 + rel="alternate" 63 + hreflang="it" 64 + href="http://localhost:1313/it/tags/" 65 + /> 66 + <xhtml:link 67 + rel="alternate" 68 + hreflang="en-us" 69 + href="http://localhost:1313/tags/" 70 + /> 71 + </url> 72 + </urlset>
+10
public/en-us/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="en"> 3 + <head> 4 + <title>https://vittoriogioda.com/</title> 5 + <link rel="canonical" href="https://vittoriogioda.com/"> 6 + <meta name="robots" content="noindex"> 7 + <meta charset="utf-8"> 8 + <meta http-equiv="refresh" content="0; url=https://vittoriogioda.com/"> 9 + </head> 10 + </html>
+72
public/en-us/sitemap.xml
··· 1 + <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 + <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" 3 + xmlns:xhtml="http://www.w3.org/1999/xhtml"> 4 + <url> 5 + <loc>https://vittoriogioda.com/</loc> 6 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 7 + <xhtml:link 8 + rel="alternate" 9 + hreflang="it" 10 + href="https://vittoriogioda.com/it/" 11 + /> 12 + <xhtml:link 13 + rel="alternate" 14 + hreflang="en" 15 + href="https://vittoriogioda.com/" 16 + /> 17 + </url><url> 18 + <loc>https://vittoriogioda.com/posts/linux-out-of-memory/</loc> 19 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 20 + <xhtml:link 21 + rel="alternate" 22 + hreflang="it" 23 + href="https://vittoriogioda.com/it/posts/linux-out-of-memory/" 24 + /> 25 + <xhtml:link 26 + rel="alternate" 27 + hreflang="en" 28 + href="https://vittoriogioda.com/posts/linux-out-of-memory/" 29 + /> 30 + </url><url> 31 + <loc>https://vittoriogioda.com/posts/</loc> 32 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 33 + <xhtml:link 34 + rel="alternate" 35 + hreflang="it" 36 + href="https://vittoriogioda.com/it/posts/" 37 + /> 38 + <xhtml:link 39 + rel="alternate" 40 + hreflang="en" 41 + href="https://vittoriogioda.com/posts/" 42 + /> 43 + </url><url> 44 + <loc>https://vittoriogioda.com/categories/</loc> 45 + <xhtml:link 46 + rel="alternate" 47 + hreflang="it" 48 + href="https://vittoriogioda.com/it/categories/" 49 + /> 50 + <xhtml:link 51 + rel="alternate" 52 + hreflang="en" 53 + href="https://vittoriogioda.com/categories/" 54 + /> 55 + </url><url> 56 + <loc>https://vittoriogioda.com/collection/</loc> 57 + </url><url> 58 + <loc>https://vittoriogioda.com/cv/</loc> 59 + </url><url> 60 + <loc>https://vittoriogioda.com/tags/</loc> 61 + <xhtml:link 62 + rel="alternate" 63 + hreflang="it" 64 + href="https://vittoriogioda.com/it/tags/" 65 + /> 66 + <xhtml:link 67 + rel="alternate" 68 + hreflang="en" 69 + href="https://vittoriogioda.com/tags/" 70 + /> 71 + </url> 72 + </urlset>
+10 -9
public/index.html
··· 1 - <!DOCTYPE html><html lang="en-gb" class="dark"><head><meta charset="utf-8"> 1 + <!DOCTYPE html><html lang="en" class="dark"><head><meta charset="utf-8"> 2 2 <meta http-equiv="content-type" content="text/html"> 3 3 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 4 4 ··· 14 14 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 15 15 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 17 - <meta property="og:locale" content="en-gb" /> 18 - <meta name="language" content="en-gb" /> 17 + <meta property="og:locale" content="en" /> 18 + <meta name="language" content="en" /> 19 19 20 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/" title="English" /> 20 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/" title="English" /> 21 + 22 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/" title="Italiano" /> 21 23 22 24 23 25 ··· 44 46 <link rel="canonical" href="https://vittoriogioda.com/"> 45 47 <link href="/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 46 48 <link href="/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 47 - <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 49 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 48 50 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 49 51 50 52 ··· 121 123 <span>|</span> 122 124 </li> 123 125 124 - 125 126 </ul> 126 127 <a id="mode" href="#"> 127 128 <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> ··· 163 164 164 165 <article class="post-item"> 165 166 <h4 class="post-item-title"> 166 - <a href="/posts/test-post/">Writing posts</a> 167 + <a href="/posts/linux-out-of-memory/">Linux Ubuntu freeze Firefox</a> 167 168 </h4> 168 169 169 170 170 171 171 172 172 - <time class="post-item-meta" datetime="2026-02-26T21:52:11&#43;0100"> 173 - 26 Feb 2026 173 + <time class="post-item-meta" datetime="2026-04-28T00:00:00Z"> 174 + 28 Apr 2026 174 175 175 176 </time> 176 177 </article>
+8 -8
public/index.xml
··· 5 5 <link>https://vittoriogioda.com/</link> 6 6 <description>Recent content in Home on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language> 9 - <lastBuildDate>Thu, 26 Feb 2026 21:52:11 +0100</lastBuildDate><atom:link href="https://vittoriogioda.com/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en</language> 9 + <lastBuildDate>Tue, 28 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://vittoriogioda.com/index.xml" rel="self" type="application/rss+xml" /> 10 10 <item> 11 - <title>Writing posts</title> 12 - <link>https://vittoriogioda.com/posts/test-post/</link> 13 - <pubDate>Thu, 26 Feb 2026 21:52:11 +0100</pubDate> 11 + <title>Linux Ubuntu freeze Firefox</title> 12 + <link>https://vittoriogioda.com/posts/linux-out-of-memory/</link> 13 + <pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate> 14 14 15 - <guid>https://vittoriogioda.com/posts/test-post/</guid> 15 + <guid>https://vittoriogioda.com/posts/linux-out-of-memory/</guid> 16 16 17 - <description>Writing is fun. Writing a blog is fun. 18 - Fun is fun.</description> 17 + <description>The problem Third time it’s happened. I open a few tabs in Firefox, work for a couple of hours, and at some point, the system locks up completely. Nothing works, no mouse, no keyboard. The only option is to hold down the power button: 18 + Out of memory: Killed process 154968 (Isolated Web Co) total-vm:8286172kB, anon-rss:5154148kB Firefox was eating 5GB of RAM. A single &amp;ldquo;Isolated Web Co&amp;rdquo; process (which is basically a Firefox tab or content process).</description> 19 19 20 20 </item> 21 21
+197
public/it/404.html
··· 1 + <!DOCTYPE html> 2 + <html lang="it"><head><meta charset="utf-8"> 3 + <meta http-equiv="content-type" content="text/html"> 4 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 + 6 + <title itemprop="name">404 Page not found | Vittorio Gioda</title> 7 + <meta property="og:title" content="404 Page not found | Vittorio Gioda" /> 8 + <meta name="twitter:title" content="404 Page not found | Vittorio Gioda" /> 9 + <meta itemprop="name" content="404 Page not found | Vittorio Gioda" /> 10 + <meta name="application-name" content="404 Page not found | Vittorio Gioda" /> 11 + <meta property="og:site_name" content="" /> 12 + 13 + <meta name="description" content=""> 14 + <meta itemprop="description" content="" /> 15 + <meta property="og:description" content="" /> 16 + <meta name="twitter:description" content="" /> 17 + 18 + <meta property="og:locale" content="it" /> 19 + <meta name="language" content="it" /> 20 + 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/404.html" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/404.html" title="Italiano" /> 24 + 25 + 26 + 27 + 28 + 29 + 30 + <meta name="generator" content="Hugo 0.123.7"> 31 + 32 + 33 + <meta property="og:title" content="404 Page not found" /> 34 + <meta property="og:description" content="" /> 35 + <meta property="og:type" content="website" /> 36 + <meta property="og:url" content="https://vittoriogioda.com/it/404.html" /> 37 + 38 + 39 + 40 + 41 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="404 Page not found"/> 42 + <meta name="twitter:description" content=""/> 43 + 44 + 45 + 46 + 47 + <link rel="canonical" href="https://vittoriogioda.com/it/404.html"> 48 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 49 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 50 + 51 + 52 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 53 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 54 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 55 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 56 + <link rel="shortcut icon" href="/favicon.ico"> 57 + 58 + 59 + 60 + 61 + <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 62 + 63 + <meta name="msapplication-config" content="/browserconfig.xml"> 64 + <meta name="msapplication-TileColor" content="#2d89ef"> 65 + <meta name="theme-color" content="#434648"> 66 + <meta name="color-scheme" content="light dark"> 67 + 68 + 69 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 70 + 71 + 72 + 73 + 74 + </head> 75 + <body data-theme = "" class="notransition"> 76 + 77 + <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 78 + 79 + <div class="navbar" role="navigation"> 80 + <nav class="menu" aria-label="Main Navigation"> 81 + <div></div> 82 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 83 + <label for="menu-trigger"> 84 + <span class="menu-icon"> 85 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 86 + </span> 87 + </label> 88 + 89 + <div class="trigger"> 90 + <ul class="trigger-container"> 91 + 92 + 93 + <li class="menu-separator"> 94 + <span>|</span> 95 + </li> 96 + 97 + </ul> 98 + <a id="mode" href="#"> 99 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 100 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 101 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 102 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 103 + </a> 104 + </div> 105 + </nav> 106 + </div> 107 + 108 + <div class="wrapper"> 109 + <main class="main-404" aria-label="Content"> 110 + <h1>404 NON TROVATO</h1> 111 + <p>Hai appena svoltato in una strada che non esiste.</p> 112 + </main> 113 + </div> 114 + <footer class="footer"> 115 + <span class="footer_item"> </span> 116 + &nbsp; 117 + 118 + <div class="footer_social-icons"> 119 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 120 + title="Github"> 121 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 122 + stroke-linecap="round" stroke-linejoin="round"> 123 + <path 124 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 125 + </path> 126 + </svg> 127 + </a> 128 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 129 + title="Tangled"> 130 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 131 + <defs id="defs1"> 132 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 133 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 134 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 135 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 136 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 137 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 138 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 139 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 140 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 141 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 142 + </feComponentTransfer> 143 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 144 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 145 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 146 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 147 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 148 + </filter> 149 + </defs> 150 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 151 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 152 + </sodipodi:namedview> 153 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 154 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 155 + </g> 156 + </svg> 157 + </a> 158 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 159 + title="Bluesky"> 160 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 161 + stroke-linecap="round" stroke-linejoin="round"> 162 + <path 163 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 164 + </svg> 165 + </a> 166 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 167 + title="Goodreads"> 168 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 169 + <path 170 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 171 + </svg> 172 + </a> 173 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 174 + title="Rss"> 175 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 176 + stroke-linecap="round" stroke-linejoin="round"> 177 + <path d="M4 11a9 9 0 0 1 9 9" /> 178 + <path d="M4 4a16 16 0 0 1 16 16" /> 179 + <circle cx="5" cy="19" r="1" /> 180 + </svg> 181 + </a> 182 + </div> 183 + </footer> 184 + 185 + 186 + 187 + 188 + 189 + 190 + 191 + 192 + <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 193 + 194 + 195 + 196 + </body> 197 + </html>
+200
public/it/categories/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="it"><head><meta charset="utf-8"> 3 + <meta http-equiv="content-type" content="text/html"> 4 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 + 6 + <title itemprop="name">Categories | Vittorio Gioda</title> 7 + <meta property="og:title" content="Categories | Vittorio Gioda" /> 8 + <meta name="twitter:title" content="Categories | Vittorio Gioda" /> 9 + <meta itemprop="name" content="Categories | Vittorio Gioda" /> 10 + <meta name="application-name" content="Categories | Vittorio Gioda" /> 11 + <meta property="og:site_name" content="" /> 12 + 13 + <meta name="description" content=""> 14 + <meta itemprop="description" content="" /> 15 + <meta property="og:description" content="" /> 16 + <meta name="twitter:description" content="" /> 17 + 18 + <meta property="og:locale" content="it" /> 19 + <meta name="language" content="it" /> 20 + 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/categories/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/categories/" title="Italiano" /> 24 + 25 + 26 + 27 + 28 + 29 + 30 + <meta name="generator" content="Hugo 0.123.7"> 31 + 32 + 33 + <meta property="og:title" content="Categories" /> 34 + <meta property="og:description" content="" /> 35 + <meta property="og:type" content="website" /> 36 + <meta property="og:url" content="https://vittoriogioda.com/it/categories/" /> 37 + 38 + 39 + 40 + 41 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Categories"/> 42 + <meta name="twitter:description" content=""/> 43 + 44 + 45 + 46 + 47 + <link rel="canonical" href="https://vittoriogioda.com/it/categories/"> 48 + <link href="/it/categories/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 49 + <link href="/it/categories/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 50 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 51 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 52 + 53 + 54 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 55 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 56 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 57 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 58 + <link rel="shortcut icon" href="/favicon.ico"> 59 + 60 + 61 + 62 + 63 + <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 64 + 65 + <meta name="msapplication-config" content="/browserconfig.xml"> 66 + <meta name="msapplication-TileColor" content="#2d89ef"> 67 + <meta name="theme-color" content="#434648"> 68 + <meta name="color-scheme" content="light dark"> 69 + 70 + 71 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 72 + 73 + 74 + 75 + 76 + </head> 77 + <body data-theme = "" class="notransition"> 78 + 79 + <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 80 + 81 + <div class="navbar" role="navigation"> 82 + <nav class="menu" aria-label="Main Navigation"> 83 + <div></div> 84 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 85 + <label for="menu-trigger"> 86 + <span class="menu-icon"> 87 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 88 + </span> 89 + </label> 90 + 91 + <div class="trigger"> 92 + <ul class="trigger-container"> 93 + 94 + 95 + <li class="menu-separator"> 96 + <span>|</span> 97 + </li> 98 + 99 + </ul> 100 + <a id="mode" href="#"> 101 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 102 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 103 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 104 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 105 + </a> 106 + </div> 107 + </nav> 108 + </div> 109 + <div class="wrapper list-page"> 110 + <header class="header"> 111 + <h1 class="header-title center">Categories</h1> 112 + </header> 113 + <main class="page-content" aria-label="Content"> 114 + 115 + 116 + </main> 117 + </div><footer class="footer"> 118 + <span class="footer_item"> </span> 119 + &nbsp; 120 + 121 + <div class="footer_social-icons"> 122 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 123 + title="Github"> 124 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 125 + stroke-linecap="round" stroke-linejoin="round"> 126 + <path 127 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 128 + </path> 129 + </svg> 130 + </a> 131 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 132 + title="Tangled"> 133 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 134 + <defs id="defs1"> 135 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 136 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 137 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 138 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 139 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 140 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 141 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 142 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 143 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 144 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 145 + </feComponentTransfer> 146 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 147 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 148 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 149 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 150 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 151 + </filter> 152 + </defs> 153 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 154 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 155 + </sodipodi:namedview> 156 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 157 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 158 + </g> 159 + </svg> 160 + </a> 161 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 162 + title="Bluesky"> 163 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 164 + stroke-linecap="round" stroke-linejoin="round"> 165 + <path 166 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 167 + </svg> 168 + </a> 169 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 170 + title="Goodreads"> 171 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 172 + <path 173 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 174 + </svg> 175 + </a> 176 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 177 + title="Rss"> 178 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 179 + stroke-linecap="round" stroke-linejoin="round"> 180 + <path d="M4 11a9 9 0 0 1 9 9" /> 181 + <path d="M4 4a16 16 0 0 1 16 16" /> 182 + <circle cx="5" cy="19" r="1" /> 183 + </svg> 184 + </a> 185 + </div> 186 + </footer> 187 + 188 + 189 + 190 + 191 + 192 + 193 + 194 + 195 + <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 196 + 197 + 198 + 199 + </body> 200 + </html>
+10
public/it/categories/index.xml
··· 1 + <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 + <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 3 + <channel> 4 + <title>Categories on Vittorio Gioda</title> 5 + <link>https://vittoriogioda.com/it/categories/</link> 6 + <description>Recent content in Categories on Vittorio Gioda</description> 7 + <generator>Hugo -- gohugo.io</generator> 8 + <language>it</language><atom:link href="https://vittoriogioda.com/it/categories/index.xml" rel="self" type="application/rss+xml" /> 9 + </channel> 10 + </rss>
+225
public/it/index.html
··· 1 + <!DOCTYPE html><html lang="it"><head><meta charset="utf-8"> 2 + <meta http-equiv="content-type" content="text/html"> 3 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 4 + 5 + <title itemprop="name">Vittorio Gioda | Vittorio Gioda</title> 6 + <meta property="og:title" content="Vittorio Gioda | Vittorio Gioda" /> 7 + <meta name="twitter:title" content="Vittorio Gioda | Vittorio Gioda" /> 8 + <meta itemprop="name" content="Vittorio Gioda | Vittorio Gioda" /> 9 + <meta name="application-name" content="Vittorio Gioda | Vittorio Gioda" /> 10 + <meta property="og:site_name" content="" /> 11 + 12 + <meta name="description" content=""> 13 + <meta itemprop="description" content="" /> 14 + <meta property="og:description" content="" /> 15 + <meta name="twitter:description" content="" /> 16 + 17 + <meta property="og:locale" content="it" /> 18 + <meta name="language" content="it" /> 19 + 20 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/" title="English" /> 21 + 22 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/" title="Italiano" /> 23 + 24 + 25 + 26 + 27 + 28 + 29 + <meta name="generator" content="Hugo 0.123.7"> 30 + 31 + 32 + <meta property="og:title" content="Vittorio Gioda" /> 33 + <meta property="og:description" content="" /> 34 + <meta property="og:type" content="website" /> 35 + <meta property="og:url" content="https://vittoriogioda.com/it/" /> 36 + 37 + 38 + 39 + 40 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Vittorio Gioda"/> 41 + <meta name="twitter:description" content=""/> 42 + 43 + 44 + 45 + 46 + <link rel="canonical" href="https://vittoriogioda.com/it/"> 47 + <link href="/it/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 48 + <link href="/it/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 49 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 50 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 51 + 52 + 53 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 54 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 55 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 56 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 57 + <link rel="shortcut icon" href="/favicon.ico"> 58 + 59 + 60 + 61 + 62 + <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 63 + 64 + <meta name="msapplication-config" content="/browserconfig.xml"> 65 + <meta name="msapplication-TileColor" content="#2d89ef"> 66 + <meta name="theme-color" content="#434648"> 67 + <meta name="color-scheme" content="light dark"> 68 + 69 + 70 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 71 + 72 + 73 + 74 + 75 + </head> 76 + <body data-theme="auto" class="notransition"> 77 + 78 + <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 79 + 80 + <div class="navbar" role="navigation"> 81 + <nav class="menu" aria-label="Main Navigation"> 82 + <div></div> 83 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 84 + <label for="menu-trigger"> 85 + <span class="menu-icon"> 86 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 87 + </span> 88 + </label> 89 + 90 + <div class="trigger"> 91 + <ul class="trigger-container"> 92 + 93 + 94 + <li class="menu-separator"> 95 + <span>|</span> 96 + </li> 97 + 98 + </ul> 99 + <a id="mode" href="#"> 100 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 101 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 102 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 103 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 104 + </a> 105 + </div> 106 + </nav> 107 + </div> 108 + <div class="wrapper"> 109 + 110 + 111 + 112 + <div class="author"> 113 + 114 + <h2 class="author-name"></h2> 115 + <p class="author-bio"></p> 116 + </div> 117 + 118 + <main aria-label="Content"> 119 + <h3 class="posts-item-note" aria-label="Recent Posts">Articoli Recenti</h3> 120 + 121 + 122 + 123 + 124 + <article class="post-item"> 125 + <h4 class="post-item-title"> 126 + <a href="/it/posts/linux-out-of-memory/">Linux Ubuntu freeze Firefox</a> 127 + </h4> 128 + 129 + 130 + 131 + 132 + <time class="post-item-meta" datetime="2026-04-28T00:00:00Z"> 133 + 28 apr 2026 134 + 135 + </time> 136 + </article> 137 + 138 + 139 + 140 + </main> 141 + </div><footer class="footer"> 142 + <span class="footer_item"> </span> 143 + &nbsp; 144 + 145 + <div class="footer_social-icons"> 146 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 147 + title="Github"> 148 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 149 + stroke-linecap="round" stroke-linejoin="round"> 150 + <path 151 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 152 + </path> 153 + </svg> 154 + </a> 155 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 156 + title="Tangled"> 157 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 158 + <defs id="defs1"> 159 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 160 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 161 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 162 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 163 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 164 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 165 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 166 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 167 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 168 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 169 + </feComponentTransfer> 170 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 171 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 172 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 173 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 174 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 175 + </filter> 176 + </defs> 177 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 178 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 179 + </sodipodi:namedview> 180 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 181 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 182 + </g> 183 + </svg> 184 + </a> 185 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 186 + title="Bluesky"> 187 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 188 + stroke-linecap="round" stroke-linejoin="round"> 189 + <path 190 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 191 + </svg> 192 + </a> 193 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 194 + title="Goodreads"> 195 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 196 + <path 197 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 198 + </svg> 199 + </a> 200 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 201 + title="Rss"> 202 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 203 + stroke-linecap="round" stroke-linejoin="round"> 204 + <path d="M4 11a9 9 0 0 1 9 9" /> 205 + <path d="M4 4a16 16 0 0 1 16 16" /> 206 + <circle cx="5" cy="19" r="1" /> 207 + </svg> 208 + </a> 209 + </div> 210 + </footer> 211 + 212 + 213 + 214 + 215 + 216 + 217 + 218 + 219 + <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 220 + 221 + 222 + 223 + </body> 224 + 225 + </html>
+23
public/it/index.xml
··· 1 + <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 + <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 3 + <channel> 4 + <title>Vittorio Gioda</title> 5 + <link>https://vittoriogioda.com/it/</link> 6 + <description>Recent content on Vittorio Gioda</description> 7 + <generator>Hugo -- gohugo.io</generator> 8 + <language>it</language> 9 + <lastBuildDate>Tue, 28 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://vittoriogioda.com/it/index.xml" rel="self" type="application/rss+xml" /> 10 + <item> 11 + <title>Linux Ubuntu freeze Firefox</title> 12 + <link>https://vittoriogioda.com/it/posts/linux-out-of-memory/</link> 13 + <pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate> 14 + 15 + <guid>https://vittoriogioda.com/it/posts/linux-out-of-memory/</guid> 16 + 17 + <description>Il problema Terza volta che succede. Apro un po&amp;rsquo; di tab su Firefox, lavoro un paio d&amp;rsquo;ore, e a un certo punto il sistema si inchioda completamente. Niente funziona, niente mouse, niente tastiera. L&amp;rsquo;unica è tenere premuto il power button: 18 + Out of memory: Killed process 154968 (Isolated Web Co) total-vm:8286172kB, anon-rss:5154148kB Firefox si stava mangiando 5GB di RAM. Un singolo processo &amp;ldquo;Isolated Web Co&amp;rdquo; (che poi è tipo un tab o un content process di Firefox)</description> 19 + 20 + </item> 21 + 22 + </channel> 23 + </rss>
+271
public/it/posts/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="it"><head><meta charset="utf-8"> 3 + <meta http-equiv="content-type" content="text/html"> 4 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 + 6 + <title itemprop="name">Posts | Vittorio Gioda</title> 7 + <meta property="og:title" content="Posts | Vittorio Gioda" /> 8 + <meta name="twitter:title" content="Posts | Vittorio Gioda" /> 9 + <meta itemprop="name" content="Posts | Vittorio Gioda" /> 10 + <meta name="application-name" content="Posts | Vittorio Gioda" /> 11 + <meta property="og:site_name" content="" /> 12 + 13 + <meta name="description" content=""> 14 + <meta itemprop="description" content="" /> 15 + <meta property="og:description" content="" /> 16 + <meta name="twitter:description" content="" /> 17 + 18 + <meta property="og:locale" content="it" /> 19 + <meta name="language" content="it" /> 20 + 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/posts/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/posts/" title="Italiano" /> 24 + 25 + 26 + 27 + 28 + 29 + 30 + 31 + 32 + 33 + 34 + <link rel="first" href="/it/posts/" /> 35 + <link rel="last" href="/it/posts/" /> 36 + 37 + 38 + 39 + 40 + 41 + <meta property="og:type" content="article" /> 42 + <meta property="og:article:published_time" content=2026-04-28T00:00:00Z /> 43 + <meta property="article:published_time" content=2026-04-28T00:00:00Z /> 44 + <meta property="og:url" content="https://vittoriogioda.com/it/posts/" /> 45 + 46 + 47 + 48 + 49 + 50 + <script defer type="application/ld+json"> 51 + { 52 + "@context": "http://schema.org", 53 + "@type": "Article", 54 + "headline": "Posts", 55 + "author": { 56 + "@type": "Person", 57 + "name": "" 58 + }, 59 + "datePublished": "2026-04-28", 60 + "description": "", 61 + "wordCount": 0 , 62 + "mainEntityOfPage": "True", 63 + "dateModified": "2026-04-28", 64 + "image": { 65 + "@type": "imageObject", 66 + "url": "" 67 + }, 68 + "publisher": { 69 + "@type": "Organization", 70 + "name": "Vittorio Gioda" 71 + } 72 + } 73 + </script> 74 + 75 + 76 + <meta name="generator" content="Hugo 0.123.7"> 77 + 78 + 79 + <meta property="og:title" content="Posts" /> 80 + <meta property="og:description" content="" /> 81 + <meta property="og:type" content="website" /> 82 + <meta property="og:url" content="https://vittoriogioda.com/it/posts/" /> 83 + 84 + 85 + 86 + 87 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Posts"/> 88 + <meta name="twitter:description" content=""/> 89 + 90 + 91 + 92 + 93 + <link rel="canonical" href="https://vittoriogioda.com/it/posts/"> 94 + <link href="/it/posts/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 95 + <link href="/it/posts/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 96 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 97 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 98 + 99 + 100 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 101 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 102 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 103 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 104 + <link rel="shortcut icon" href="/favicon.ico"> 105 + 106 + 107 + 108 + 109 + <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 110 + 111 + <meta name="msapplication-config" content="/browserconfig.xml"> 112 + <meta name="msapplication-TileColor" content="#2d89ef"> 113 + <meta name="theme-color" content="#434648"> 114 + <meta name="color-scheme" content="light dark"> 115 + 116 + 117 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 118 + 119 + 120 + 121 + 122 + </head> 123 + <body data-theme = "" class="notransition"> 124 + 125 + <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 126 + 127 + <div class="navbar" role="navigation"> 128 + <nav class="menu" aria-label="Main Navigation"> 129 + <div></div> 130 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 131 + <label for="menu-trigger"> 132 + <span class="menu-icon"> 133 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 134 + </span> 135 + </label> 136 + 137 + <div class="trigger"> 138 + <ul class="trigger-container"> 139 + 140 + 141 + <li class="menu-separator"> 142 + <span>|</span> 143 + </li> 144 + 145 + </ul> 146 + <a id="mode" href="#"> 147 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 148 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 149 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 150 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 151 + </a> 152 + </div> 153 + </nav> 154 + </div> 155 + <div class="wrapper list-page"> 156 + <header class="header"> 157 + <h1 class="header-title center">Posts</h1> 158 + </header> 159 + <main class="page-content" aria-label="Content"> 160 + 161 + 162 + <h2 class="post-year">2026</h2> 163 + 164 + 165 + 166 + 167 + 168 + <article class="post-item"> 169 + <h4 class="post-item-title"> 170 + <a href="/it/posts/linux-out-of-memory/">Linux Ubuntu freeze Firefox</a> 171 + </h4> 172 + 173 + 174 + 175 + 176 + <time class="post-item-meta" datetime="2026-04-28T00:00:00Z"> 177 + 28 apr 2026 178 + 179 + </time> 180 + </article> 181 + 182 + 183 + 184 + 185 + 186 + 187 + </main> 188 + </div><footer class="footer"> 189 + <span class="footer_item"> </span> 190 + &nbsp; 191 + 192 + <div class="footer_social-icons"> 193 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 194 + title="Github"> 195 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 196 + stroke-linecap="round" stroke-linejoin="round"> 197 + <path 198 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 199 + </path> 200 + </svg> 201 + </a> 202 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 203 + title="Tangled"> 204 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 205 + <defs id="defs1"> 206 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 207 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 208 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 209 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 210 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 211 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 212 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 213 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 214 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 215 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 216 + </feComponentTransfer> 217 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 218 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 219 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 220 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 221 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 222 + </filter> 223 + </defs> 224 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 225 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 226 + </sodipodi:namedview> 227 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 228 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 229 + </g> 230 + </svg> 231 + </a> 232 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 233 + title="Bluesky"> 234 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 235 + stroke-linecap="round" stroke-linejoin="round"> 236 + <path 237 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 238 + </svg> 239 + </a> 240 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 241 + title="Goodreads"> 242 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 243 + <path 244 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 245 + </svg> 246 + </a> 247 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 248 + title="Rss"> 249 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 250 + stroke-linecap="round" stroke-linejoin="round"> 251 + <path d="M4 11a9 9 0 0 1 9 9" /> 252 + <path d="M4 4a16 16 0 0 1 16 16" /> 253 + <circle cx="5" cy="19" r="1" /> 254 + </svg> 255 + </a> 256 + </div> 257 + </footer> 258 + 259 + 260 + 261 + 262 + 263 + 264 + 265 + 266 + <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 267 + 268 + 269 + 270 + </body> 271 + </html>
+23
public/it/posts/index.xml
··· 1 + <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 + <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 3 + <channel> 4 + <title>Posts on Vittorio Gioda</title> 5 + <link>https://vittoriogioda.com/it/posts/</link> 6 + <description>Recent content in Posts on Vittorio Gioda</description> 7 + <generator>Hugo -- gohugo.io</generator> 8 + <language>it</language> 9 + <lastBuildDate>Tue, 28 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://vittoriogioda.com/it/posts/index.xml" rel="self" type="application/rss+xml" /> 10 + <item> 11 + <title>Linux Ubuntu freeze Firefox</title> 12 + <link>https://vittoriogioda.com/it/posts/linux-out-of-memory/</link> 13 + <pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate> 14 + 15 + <guid>https://vittoriogioda.com/it/posts/linux-out-of-memory/</guid> 16 + 17 + <description>Il problema Terza volta che succede. Apro un po&amp;rsquo; di tab su Firefox, lavoro un paio d&amp;rsquo;ore, e a un certo punto il sistema si inchioda completamente. Niente funziona, niente mouse, niente tastiera. L&amp;rsquo;unica è tenere premuto il power button: 18 + Out of memory: Killed process 154968 (Isolated Web Co) total-vm:8286172kB, anon-rss:5154148kB Firefox si stava mangiando 5GB di RAM. Un singolo processo &amp;ldquo;Isolated Web Co&amp;rdquo; (che poi è tipo un tab o un content process di Firefox)</description> 19 + 20 + </item> 21 + 22 + </channel> 23 + </rss>
public/it/posts/linux-out-of-memory/draw.png

This is a binary file and will not be displayed.

+348
public/it/posts/linux-out-of-memory/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="it"><head><meta charset="utf-8"> 3 + <meta http-equiv="content-type" content="text/html"> 4 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 + 6 + <title itemprop="name">Linux Ubuntu freeze Firefox | Vittorio Gioda</title> 7 + <meta property="og:title" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 8 + <meta name="twitter:title" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 9 + <meta itemprop="name" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 10 + <meta name="application-name" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 11 + <meta property="og:site_name" content="" /> 12 + 13 + <meta name="description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap."> 14 + <meta itemprop="description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 15 + <meta property="og:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 16 + <meta name="twitter:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 17 + 18 + <meta property="og:locale" content="it" /> 19 + <meta name="language" content="it" /> 20 + 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/posts/linux-out-of-memory/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/posts/linux-out-of-memory/" title="Italiano" /> 24 + 25 + 26 + 27 + 28 + 29 + 30 + 31 + 32 + 33 + <meta property="og:type" content="article" /> 34 + <meta property="og:article:published_time" content=2026-04-28T00:00:00Z /> 35 + <meta property="article:published_time" content=2026-04-28T00:00:00Z /> 36 + <meta property="og:url" content="https://vittoriogioda.com/it/posts/linux-out-of-memory/" /> 37 + 38 + 39 + 40 + 41 + 42 + <script defer type="application/ld+json"> 43 + { 44 + "@context": "http://schema.org", 45 + "@type": "Article", 46 + "headline": "Linux Ubuntu freeze Firefox", 47 + "author": { 48 + "@type": "Person", 49 + "name": "" 50 + }, 51 + "datePublished": "2026-04-28", 52 + "description": "Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap.", 53 + "wordCount": 607 , 54 + "mainEntityOfPage": "True", 55 + "dateModified": "2026-04-28", 56 + "image": { 57 + "@type": "imageObject", 58 + "url": "" 59 + }, 60 + "publisher": { 61 + "@type": "Organization", 62 + "name": "Vittorio Gioda" 63 + } 64 + } 65 + </script> 66 + 67 + 68 + <meta name="generator" content="Hugo 0.123.7"> 69 + 70 + 71 + <meta property="og:title" content="Linux Ubuntu freeze Firefox" /> 72 + <meta property="og:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 73 + <meta property="og:type" content="article" /> 74 + <meta property="og:url" content="https://vittoriogioda.com/it/posts/linux-out-of-memory/" /><meta property="article:section" content="posts" /> 75 + <meta property="article:published_time" content="2026-04-28T00:00:00+00:00" /> 76 + <meta property="article:modified_time" content="2026-04-28T00:00:00+00:00" /> 77 + 78 + 79 + 80 + 81 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Linux Ubuntu freeze Firefox"/> 82 + <meta name="twitter:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap."/> 83 + 84 + 85 + 86 + 87 + <link rel="canonical" href="https://vittoriogioda.com/it/posts/linux-out-of-memory/"> 88 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 89 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 90 + 91 + 92 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 93 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 94 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 95 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 96 + <link rel="shortcut icon" href="/favicon.ico"> 97 + 98 + 99 + 100 + 101 + <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 102 + 103 + <meta name="msapplication-config" content="/browserconfig.xml"> 104 + <meta name="msapplication-TileColor" content="#2d89ef"> 105 + <meta name="theme-color" content="#434648"> 106 + <meta name="color-scheme" content="light dark"> 107 + 108 + 109 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 110 + 111 + 112 + 113 + 114 + </head> 115 + <body data-theme = "" class="notransition"> 116 + 117 + <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 118 + 119 + <div class="navbar" role="navigation"> 120 + <nav class="menu" aria-label="Main Navigation"> 121 + <div></div> 122 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 123 + <label for="menu-trigger"> 124 + <span class="menu-icon"> 125 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 126 + </span> 127 + </label> 128 + 129 + <div class="trigger"> 130 + <ul class="trigger-container"> 131 + 132 + 133 + <li class="menu-separator"> 134 + <span>|</span> 135 + </li> 136 + 137 + <li> 138 + <select aria-label="Select Language" class="lang-list" id="select-language" onchange="location = this.value;"> 139 + 140 + 141 + 142 + 143 + 144 + 145 + 146 + 147 + <option id="en-us" value="https://vittoriogioda.com/posts/linux-out-of-memory/">EN</option> 148 + 149 + 150 + 151 + 152 + 153 + 154 + 155 + 156 + 157 + 158 + 159 + 160 + 161 + <option id="it" value="https://vittoriogioda.com/it/posts/linux-out-of-memory/" selected>IT 162 + </option> 163 + 164 + 165 + 166 + 167 + </select> 168 + </li> 169 + <li class="menu-separator"> 170 + <span>|</span> 171 + </li> 172 + 173 + </ul> 174 + <a id="mode" href="#"> 175 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 176 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 177 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 178 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 179 + </a> 180 + </div> 181 + </nav> 182 + </div> 183 + 184 + <div class="wrapper post"> 185 + <main class="page-content" aria-label="Content"> 186 + <article> 187 + <header class="header"> 188 + <h1 class="header-title">Linux Ubuntu freeze Firefox</h1> 189 + 190 + 191 + 192 + <div class="post-meta"> 193 + <time datetime="2026-04-28T00:00:00&#43;00:00" itemprop="datePublished"> 28 apr 2026 </time> 194 + </div> 195 + 196 + </header> 197 + 198 + <div class="page-content"> 199 + <h2 id="il-problema">Il problema</h2> 200 + <p>Terza volta che succede. Apro un po&rsquo; di tab su Firefox, lavoro un paio d&rsquo;ore, e a un certo punto il sistema si inchioda completamente. Niente funziona, niente mouse, niente tastiera. L&rsquo;unica è tenere premuto il power button:</p> 201 + <pre tabindex="0"><code>Out of memory: Killed process 154968 (Isolated Web Co) 202 + total-vm:8286172kB, anon-rss:5154148kB 203 + </code></pre><p><strong>Firefox si stava mangiando 5GB di RAM.</strong> Un singolo processo &ldquo;Isolated Web Co&rdquo; (che poi è tipo un tab o un content process di Firefox)</p> 204 + <p>Con <code>last -x</code> ho anche visto che il sistema era crashato alle 11:12, e nei log non c&rsquo;era nessun messaggio OOM prima del crash. Questo significa che il sistema si è congelato così velocemente che l&rsquo;OOM killer non ha fatto in tempo a intervenire.</p> 205 + <p>La mia config:</p> 206 + <ul> 207 + <li>16GB di RAM</li> 208 + <li>4GB di swap</li> 209 + <li>swappiness a 60 (default)</li> 210 + </ul> 211 + <p>Troppo poco swap, e quando la RAM si riempie velocemente il kernel non fa in tempo a uccidere i processi prima che tutto si blocchi.</p> 212 + <p>Ho cercato in giro per capire come configurare meglio il sistema. Ecco un po&rsquo; di cose utili:</p> 213 + <h3 id="swap-size">Swap size</h3> 214 + <p>Su <a href="https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/managing_storage_devices/getting-started-with-swap_managing-storage-devices">Red Hat Documentation</a> e <a href="https://thelinuxcode.com/change_swap_size_ubuntu/">TheLinuxCode</a> dicono che per sistemi con più di 8GB di RAM, devi avere almeno 4GB di swap, ma se hai problemi di memory pressure è meglio andare sui 8GB. Bene io ero proprio a 4GB, quindi ho deciso di aumentare a 8GB.</p> 215 + <h3 id="earlyoom">Earlyoom</h3> 216 + <p>Poi ho scoperto <a href="https://github.com/rfjakob/earlyoom">earlyoom</a>. Questo è un daemon che monitora la memoria e uccide i processi <em>prima</em> che il sistema si blocchi. A differenza dell&rsquo;OOM killer del kernel che interviene quando è già troppo tardi, earlyoom agisce quando la memoria libera scende sotto una certa soglia.</p> 217 + <p>Su <a href="https://oneuptime.com/blog/post/2026-03-02-how-to-use-earlyoom-for-proactive-oom-prevention-on-ubuntu/view">questo articolo di OneUptime</a> spiegano come configurarlo per desktop, con le opzioni <code>--prefer</code> e <code>--avoid</code> per decidere cosa uccidere e cosa proteggere.</p> 218 + <p>Infine ho trovato <a href="https://chrisdown.name/2026/03/24/zswap-vs-zram-when-to-use-what.html">zswap</a>. È tipo una cache compressa che sta tra la RAM e lo swap su disco. Quando la memoria si riempie, zswap comprime le pagine inattive invece di scriverle subito su disco. Rispetto a zram puro, zswap si integra meglio con lo swap su disco esistente e non rompe l&rsquo;ibernazione.</p> 219 + <p>Su <a href="https://www.howtogeek.com/even-if-you-have-16gb-of-ram-this-one-compressed-swap-trick-makes-linux-significantly-smoother/">HowToGeek</a> c&rsquo;è una spiegazione molto chiara del perché zswap aiuta anche su sistemi con &ldquo;abbastanza&rdquo; RAM.</p> 220 + <h2 id="le-soluzioni-che-ho-applicato">Le soluzioni che ho applicato</h2> 221 + <h3 id="1-aumentato-lo-swap-a-8gb">1. Aumentato lo swap a 8GB</h3> 222 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo swapoff -a 223 + </span></span><span class="line"><span class="cl">sudo rm /swap.img 224 + </span></span><span class="line"><span class="cl">sudo fallocate -l 8G /swap.img 225 + </span></span><span class="line"><span class="cl">sudo chmod <span class="m">600</span> /swap.img 226 + </span></span><span class="line"><span class="cl">sudo mkswap /swap.img 227 + </span></span><span class="line"><span class="cl">sudo swapon /swap.img 228 + </span></span></code></pre></div><h3 id="2-impostato-swappiness-a-10">2. Impostato swappiness a 10</h3> 229 + <p>Così il kernel preferisce usare la RAM e usa lo swap solo quando serve davvero:</p> 230 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;vm.swappiness=10&#34;</span> <span class="p">|</span> sudo tee -a /etc/sysctl.conf 231 + </span></span><span class="line"><span class="cl">sudo sysctl -p 232 + </span></span></code></pre></div><h3 id="3-installato-e-configurato-earlyoom">3. Installato e configurato earlyoom</h3> 233 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo apt install -y earlyoom 234 + </span></span></code></pre></div><p>Poi <code>/etc/default/earlyoom</code>:</p> 235 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nv">EARLYOOM_ARGS</span><span class="o">=</span><span class="s2">&#34;-m 5 -s 5 -k -n \ 236 + </span></span></span><span class="line"><span class="cl"><span class="s2"> --prefer &#39;(^|/)(firefox|chrome|chromium|electron|Isolated Web Co|Web Content)&#39; \ 237 + </span></span></span><span class="line"><span class="cl"><span class="s2"> --avoid &#39;(^|/)(gnome-shell|Xorg|Xwayland|systemd|sshd|gnome-session|gdm|dbus-daemon)&#39;&#34;</span> 238 + </span></span></code></pre></div><p>Questo dice a earlyoom di:</p> 239 + <ul> 240 + <li>Intervenire quando RAM o swap scendono sotto il 5%</li> 241 + <li>Preferire uccidere Firefox, Chrome, Electron (i colpevoli principali)</li> 242 + <li>Proteggere gnome-shell, Xorg e i processi di sistema</li> 243 + </ul> 244 + <h3 id="4-abilitato-zswap">4. Abilitato zswap</h3> 245 + <p>Ho modificato <code>/etc/default/grub</code> aggiungendo questi parametri al kernel:</p> 246 + <pre tabindex="0"><code>zswap.enabled=1 zswap.compressor=zstd zswap.max_pool_percent=25 zswap.zpool=z3fold 247 + </code></pre><p>Poi <code>sudo update-grub</code> e via.</p> 248 + <h2 id="come-è-configurato-ora-il-mio-sistema">Come è configurato ora il mio sistema</h2> 249 + <p><img alt="Draw" src="/it/posts/linux-out-of-memory/draw.png"></p> 250 + <h2 id="risultato">Risultato</h2> 251 + <p>Ora se Firefox decide di mangiarsi 5GB di RAM per un tab impazzito:</p> 252 + <ol> 253 + <li>zswap comprime le pagine inattive, guadagnando tempo</li> 254 + <li>Se non basta, il disk swap assorbe il colpo</li> 255 + <li>Se ancora non basta, earlyoom uccide Firefox PRIMA che il sistema si blocchi</li> 256 + <li>Niente freeze</li> 257 + </ol> 258 + <p>Ho finito di configurare tutto e sto scrivendo questo post. Spero sia utile a qualcuno che ha lo stesso problema.</p> 259 + <hr> 260 + <p><em>Configurazione testata su Ubuntu 24.04.4 LTS (Noble Numbat) con 2 x 8 GB DRAM DDR4 a 3200 MHz. I link sono alle fonti che ho usato per capire come configurare il tutto.</em></p> 261 + 262 + </div> 263 + </article></main> 264 + </div> 265 + <footer class="footer"> 266 + <span class="footer_item"> </span> 267 + &nbsp; 268 + 269 + <div class="footer_social-icons"> 270 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 271 + title="Github"> 272 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 273 + stroke-linecap="round" stroke-linejoin="round"> 274 + <path 275 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 276 + </path> 277 + </svg> 278 + </a> 279 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 280 + title="Tangled"> 281 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 282 + <defs id="defs1"> 283 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 284 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 285 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 286 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 287 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 288 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 289 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 290 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 291 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 292 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 293 + </feComponentTransfer> 294 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 295 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 296 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 297 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 298 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 299 + </filter> 300 + </defs> 301 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 302 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 303 + </sodipodi:namedview> 304 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 305 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 306 + </g> 307 + </svg> 308 + </a> 309 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 310 + title="Bluesky"> 311 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 312 + stroke-linecap="round" stroke-linejoin="round"> 313 + <path 314 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 315 + </svg> 316 + </a> 317 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 318 + title="Goodreads"> 319 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 320 + <path 321 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 322 + </svg> 323 + </a> 324 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 325 + title="Rss"> 326 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 327 + stroke-linecap="round" stroke-linejoin="round"> 328 + <path d="M4 11a9 9 0 0 1 9 9" /> 329 + <path d="M4 4a16 16 0 0 1 16 16" /> 330 + <circle cx="5" cy="19" r="1" /> 331 + </svg> 332 + </a> 333 + </div> 334 + </footer> 335 + 336 + 337 + 338 + 339 + 340 + 341 + 342 + 343 + <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 344 + 345 + 346 + 347 + </body> 348 + </html>
+10
public/it/posts/page/1/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="it"> 3 + <head> 4 + <title>https://vittoriogioda.com/it/posts/</title> 5 + <link rel="canonical" href="https://vittoriogioda.com/it/posts/"> 6 + <meta name="robots" content="noindex"> 7 + <meta charset="utf-8"> 8 + <meta http-equiv="refresh" content="0; url=https://vittoriogioda.com/it/posts/"> 9 + </head> 10 + </html>
+68
public/it/sitemap.xml
··· 1 + <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 + <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" 3 + xmlns:xhtml="http://www.w3.org/1999/xhtml"> 4 + <url> 5 + <loc>https://vittoriogioda.com/it/posts/linux-out-of-memory/</loc> 6 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 7 + <xhtml:link 8 + rel="alternate" 9 + hreflang="en" 10 + href="https://vittoriogioda.com/posts/linux-out-of-memory/" 11 + /> 12 + <xhtml:link 13 + rel="alternate" 14 + hreflang="it" 15 + href="https://vittoriogioda.com/it/posts/linux-out-of-memory/" 16 + /> 17 + </url><url> 18 + <loc>https://vittoriogioda.com/it/posts/</loc> 19 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 20 + <xhtml:link 21 + rel="alternate" 22 + hreflang="en" 23 + href="https://vittoriogioda.com/posts/" 24 + /> 25 + <xhtml:link 26 + rel="alternate" 27 + hreflang="it" 28 + href="https://vittoriogioda.com/it/posts/" 29 + /> 30 + </url><url> 31 + <loc>https://vittoriogioda.com/it/</loc> 32 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 33 + <xhtml:link 34 + rel="alternate" 35 + hreflang="en" 36 + href="https://vittoriogioda.com/" 37 + /> 38 + <xhtml:link 39 + rel="alternate" 40 + hreflang="it" 41 + href="https://vittoriogioda.com/it/" 42 + /> 43 + </url><url> 44 + <loc>https://vittoriogioda.com/it/categories/</loc> 45 + <xhtml:link 46 + rel="alternate" 47 + hreflang="en" 48 + href="https://vittoriogioda.com/categories/" 49 + /> 50 + <xhtml:link 51 + rel="alternate" 52 + hreflang="it" 53 + href="https://vittoriogioda.com/it/categories/" 54 + /> 55 + </url><url> 56 + <loc>https://vittoriogioda.com/it/tags/</loc> 57 + <xhtml:link 58 + rel="alternate" 59 + hreflang="en" 60 + href="https://vittoriogioda.com/tags/" 61 + /> 62 + <xhtml:link 63 + rel="alternate" 64 + hreflang="it" 65 + href="https://vittoriogioda.com/it/tags/" 66 + /> 67 + </url> 68 + </urlset>
+200
public/it/tags/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="it"><head><meta charset="utf-8"> 3 + <meta http-equiv="content-type" content="text/html"> 4 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 + 6 + <title itemprop="name">Tags | Vittorio Gioda</title> 7 + <meta property="og:title" content="Tags | Vittorio Gioda" /> 8 + <meta name="twitter:title" content="Tags | Vittorio Gioda" /> 9 + <meta itemprop="name" content="Tags | Vittorio Gioda" /> 10 + <meta name="application-name" content="Tags | Vittorio Gioda" /> 11 + <meta property="og:site_name" content="" /> 12 + 13 + <meta name="description" content=""> 14 + <meta itemprop="description" content="" /> 15 + <meta property="og:description" content="" /> 16 + <meta name="twitter:description" content="" /> 17 + 18 + <meta property="og:locale" content="it" /> 19 + <meta name="language" content="it" /> 20 + 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/tags/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/tags/" title="Italiano" /> 24 + 25 + 26 + 27 + 28 + 29 + 30 + <meta name="generator" content="Hugo 0.123.7"> 31 + 32 + 33 + <meta property="og:title" content="Tags" /> 34 + <meta property="og:description" content="" /> 35 + <meta property="og:type" content="website" /> 36 + <meta property="og:url" content="https://vittoriogioda.com/it/tags/" /> 37 + 38 + 39 + 40 + 41 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Tags"/> 42 + <meta name="twitter:description" content=""/> 43 + 44 + 45 + 46 + 47 + <link rel="canonical" href="https://vittoriogioda.com/it/tags/"> 48 + <link href="/it/tags/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 49 + <link href="/it/tags/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 50 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 51 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 52 + 53 + 54 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 55 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 56 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 57 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 58 + <link rel="shortcut icon" href="/favicon.ico"> 59 + 60 + 61 + 62 + 63 + <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 64 + 65 + <meta name="msapplication-config" content="/browserconfig.xml"> 66 + <meta name="msapplication-TileColor" content="#2d89ef"> 67 + <meta name="theme-color" content="#434648"> 68 + <meta name="color-scheme" content="light dark"> 69 + 70 + 71 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 72 + 73 + 74 + 75 + 76 + </head> 77 + <body data-theme = "" class="notransition"> 78 + 79 + <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 80 + 81 + <div class="navbar" role="navigation"> 82 + <nav class="menu" aria-label="Main Navigation"> 83 + <div></div> 84 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 85 + <label for="menu-trigger"> 86 + <span class="menu-icon"> 87 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 88 + </span> 89 + </label> 90 + 91 + <div class="trigger"> 92 + <ul class="trigger-container"> 93 + 94 + 95 + <li class="menu-separator"> 96 + <span>|</span> 97 + </li> 98 + 99 + </ul> 100 + <a id="mode" href="#"> 101 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 102 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 103 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 104 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 105 + </a> 106 + </div> 107 + </nav> 108 + </div> 109 + <div class="wrapper list-page"> 110 + <header class="header"> 111 + <h1 class="header-title center">Tags</h1> 112 + </header> 113 + <main class="page-content" aria-label="Content"> 114 + 115 + 116 + </main> 117 + </div><footer class="footer"> 118 + <span class="footer_item"> </span> 119 + &nbsp; 120 + 121 + <div class="footer_social-icons"> 122 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 123 + title="Github"> 124 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 125 + stroke-linecap="round" stroke-linejoin="round"> 126 + <path 127 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 128 + </path> 129 + </svg> 130 + </a> 131 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 132 + title="Tangled"> 133 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 134 + <defs id="defs1"> 135 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 136 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 137 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 138 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 139 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 140 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 141 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 142 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 143 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 144 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 145 + </feComponentTransfer> 146 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 147 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 148 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 149 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 150 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 151 + </filter> 152 + </defs> 153 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 154 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 155 + </sodipodi:namedview> 156 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 157 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 158 + </g> 159 + </svg> 160 + </a> 161 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 162 + title="Bluesky"> 163 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 164 + stroke-linecap="round" stroke-linejoin="round"> 165 + <path 166 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 167 + </svg> 168 + </a> 169 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 170 + title="Goodreads"> 171 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 172 + <path 173 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 174 + </svg> 175 + </a> 176 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 177 + title="Rss"> 178 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 179 + stroke-linecap="round" stroke-linejoin="round"> 180 + <path d="M4 11a9 9 0 0 1 9 9" /> 181 + <path d="M4 4a16 16 0 0 1 16 16" /> 182 + <circle cx="5" cy="19" r="1" /> 183 + </svg> 184 + </a> 185 + </div> 186 + </footer> 187 + 188 + 189 + 190 + 191 + 192 + 193 + 194 + 195 + <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 196 + 197 + 198 + 199 + </body> 200 + </html>
+10
public/it/tags/index.xml
··· 1 + <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 + <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 3 + <channel> 4 + <title>Tags on Vittorio Gioda</title> 5 + <link>https://vittoriogioda.com/it/tags/</link> 6 + <description>Recent content in Tags on Vittorio Gioda</description> 7 + <generator>Hugo -- gohugo.io</generator> 8 + <language>it</language><atom:link href="https://vittoriogioda.com/it/tags/index.xml" rel="self" type="application/rss+xml" /> 9 + </channel> 10 + </rss>
+4 -4
public/links/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8"> 2 + <html lang="en-us"><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="http://localhost:1313/links/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="http://localhost:1313/links/" title="English" /> 22 22 23 23 24 24
+1 -1
public/links/index.xml
··· 5 5 <link>http://localhost:1313/links/</link> 6 6 <description>Recent content in Links on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="http://localhost:1313/links/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en-us</language><atom:link href="http://localhost:1313/links/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+336
public/linux-out-of-memory/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="en-us"><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8"> 3 + <meta http-equiv="content-type" content="text/html"> 4 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 + 6 + <title itemprop="name">Linux Ubuntu freeze Firefox | Vittorio Gioda</title> 7 + <meta property="og:title" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 8 + <meta name="twitter:title" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 9 + <meta itemprop="name" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 10 + <meta name="application-name" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 11 + <meta property="og:site_name" content="Vittorio Gioda" /> 12 + 13 + <meta name="description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap."> 14 + <meta itemprop="description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 15 + <meta property="og:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 16 + <meta name="twitter:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 17 + 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 + 21 + <link rel="alternate" hreflang="en-us" href="http://localhost:1313/linux-out-of-memory/" title="English" /> 22 + 23 + 24 + 25 + 26 + 27 + 28 + <meta name="generator" content="Hugo 0.123.7"> 29 + 30 + 31 + <meta property="og:title" content="Linux Ubuntu freeze Firefox" /> 32 + <meta property="og:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap." /> 33 + <meta property="og:type" content="article" /> 34 + <meta property="og:url" content="http://localhost:1313/linux-out-of-memory/" /><meta property="article:section" content="" /> 35 + <meta property="article:published_time" content="2026-04-28T00:00:00+00:00" /> 36 + <meta property="article:modified_time" content="2026-04-28T00:00:00+00:00" /> 37 + 38 + 39 + 40 + 41 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Linux Ubuntu freeze Firefox"/> 42 + <meta name="twitter:description" content="Come ho risolto i freeze di Ubuntu causati da Firefox che mangiava tutta la RAM, configurando swap, swappiness, earlyoom e zswap."/> 43 + 44 + 45 + 46 + 47 + <link rel="canonical" href="http://localhost:1313/linux-out-of-memory/"> 48 + <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 49 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 50 + 51 + 52 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 53 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 54 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 55 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 56 + <link rel="shortcut icon" href="/favicon.ico"> 57 + 58 + 59 + 60 + 61 + <link rel="manifest" href="http://localhost:1313/site.webmanifest"> 62 + 63 + <meta name="msapplication-config" content="/browserconfig.xml"> 64 + <meta name="msapplication-TileColor" content="#2d89ef"> 65 + <meta name="theme-color" content="#434648"> 66 + <meta name="color-scheme" content="light dark"> 67 + 68 + 69 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 70 + 71 + 72 + 73 + </head> 74 + <body data-theme = "dark" class="notransition"> 75 + 76 + <script src="/js/theme.js"></script> 77 + 78 + <div class="navbar" role="navigation"> 79 + <nav class="menu" aria-label="Main Navigation"> 80 + <div></div> 81 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 82 + <label for="menu-trigger"> 83 + <span class="menu-icon"> 84 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 85 + </span> 86 + </label> 87 + 88 + <div class="trigger"> 89 + <ul class="trigger-container"> 90 + 91 + 92 + <li> 93 + <a class="menu-link " href="/"> 94 + Home 95 + </a> 96 + 97 + </li> 98 + 99 + <li> 100 + <a class="menu-link " href="/posts/"> 101 + Posts 102 + </a> 103 + 104 + </li> 105 + 106 + <li> 107 + <a class="menu-link " href="/collection/"> 108 + Collection 109 + </a> 110 + 111 + </li> 112 + 113 + <li> 114 + <a class="menu-link " href="/cv/"> 115 + CV 116 + </a> 117 + 118 + </li> 119 + 120 + <li class="menu-separator"> 121 + <span>|</span> 122 + </li> 123 + 124 + 125 + </ul> 126 + <a id="mode" href="#"> 127 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 128 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 129 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 130 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 131 + </a> 132 + </div> 133 + </nav> 134 + </div> 135 + 136 + <div class="wrapper post"> 137 + <main class="page-content" aria-label="Content"> 138 + <article> 139 + <header class="header"> 140 + <h1 class="header-title">Linux Ubuntu freeze Firefox</h1> 141 + 142 + 143 + 144 + <div class="post-meta"> 145 + <time datetime="2026-04-28T00:00:00&#43;00:00" itemprop="datePublished"> 28 Apr 2026 </time> 146 + </div> 147 + 148 + </header> 149 + 150 + <div class="page-content"> 151 + <h2 id="il-problema">Il problema</h2> 152 + <p>Terza volta che succede. Apro un po&rsquo; di tab su Firefox, lavoro un paio d&rsquo;ore, e a un certo punto il sistema si inchioda completamente. Niente funziona, niente mouse, niente tastiera. L&rsquo;unica è tenere premuto il power button:</p> 153 + <pre tabindex="0"><code>Out of memory: Killed process 154968 (Isolated Web Co) 154 + total-vm:8286172kB, anon-rss:5154148kB 155 + </code></pre><p><strong>Firefox si stava mangiando 5GB di RAM.</strong> Un singolo processo &ldquo;Isolated Web Co&rdquo; (che poi è tipo un tab o un content process di Firefox)</p> 156 + <p>Con <code>last -x</code> ho anche visto che il sistema era crashato alle 11:12, e nei log non c&rsquo;era nessun messaggio OOM prima del crash. Questo significa che il sistema si è congelato così velocemente che l&rsquo;OOM killer non ha fatto in tempo a intervenire.</p> 157 + <p>La mia config:</p> 158 + <ul> 159 + <li>16GB di RAM</li> 160 + <li>4GB di swap</li> 161 + <li>swappiness a 60 (default)</li> 162 + </ul> 163 + <p>Troppo poco swap, e quando la RAM si riempie velocemente il kernel non fa in tempo a uccidere i processi prima che tutto si blocchi.</p> 164 + <p>Ho cercato in giro per capire come configurare meglio il sistema. Ecco un po&rsquo; di cose utili:</p> 165 + <h3 id="swap-size">Swap size</h3> 166 + <p>Su <a href="https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/managing_storage_devices/getting-started-with-swap_managing-storage-devices">Red Hat Documentation</a> e <a href="https://thelinuxcode.com/change_swap_size_ubuntu/">TheLinuxCode</a> dicono che per sistemi con più di 8GB di RAM, devi avere almeno 4GB di swap, ma se hai problemi di memory pressure è meglio andare sui 8GB. Bene io ero proprio a 4GB, quindi ho deciso di aumentare a 8GB.</p> 167 + <h3 id="earlyoom">Earlyoom</h3> 168 + <p>Poi ho scoperto <a href="https://github.com/rfjakob/earlyoom">earlyoom</a>. Questo è un daemon che monitora la memoria e uccide i processi <em>prima</em> che il sistema si blocchi. A differenza dell&rsquo;OOM killer del kernel che interviene quando è già troppo tardi, earlyoom agisce quando la memoria libera scende sotto una certa soglia.</p> 169 + <p>Su <a href="https://oneuptime.com/blog/post/2026-03-02-how-to-use-earlyoom-for-proactive-oom-prevention-on-ubuntu/view">questo articolo di OneUptime</a> spiegano come configurarlo per desktop, con le opzioni <code>--prefer</code> e <code>--avoid</code> per decidere cosa uccidere e cosa proteggere.</p> 170 + <p>Infine ho trovato <a href="https://chrisdown.name/2026/03/24/zswap-vs-zram-when-to-use-what.html">zswap</a>. È tipo una cache compressa che sta tra la RAM e lo swap su disco. Quando la memoria si riempie, zswap comprime le pagine inattive invece di scriverle subito su disco. Rispetto a zram puro, zswap si integra meglio con lo swap su disco esistente e non rompe l&rsquo;ibernazione.</p> 171 + <p>Su <a href="https://www.howtogeek.com/even-if-you-have-16gb-of-ram-this-one-compressed-swap-trick-makes-linux-significantly-smoother/">HowToGeek</a> c&rsquo;è una spiegazione molto chiara del perché zswap aiuta anche su sistemi con &ldquo;abbastanza&rdquo; RAM.</p> 172 + <h2 id="le-soluzioni-che-ho-applicato">Le soluzioni che ho applicato</h2> 173 + <h3 id="1-aumentato-lo-swap-a-8gb">1. Aumentato lo swap a 8GB</h3> 174 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo swapoff -a 175 + </span></span><span class="line"><span class="cl">sudo rm /swap.img 176 + </span></span><span class="line"><span class="cl">sudo fallocate -l 8G /swap.img 177 + </span></span><span class="line"><span class="cl">sudo chmod <span class="m">600</span> /swap.img 178 + </span></span><span class="line"><span class="cl">sudo mkswap /swap.img 179 + </span></span><span class="line"><span class="cl">sudo swapon /swap.img 180 + </span></span></code></pre></div><h3 id="2-impostato-swappiness-a-10">2. Impostato swappiness a 10</h3> 181 + <p>Così il kernel preferisce usare la RAM e usa lo swap solo quando serve davvero:</p> 182 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;vm.swappiness=10&#34;</span> <span class="p">|</span> sudo tee -a /etc/sysctl.conf 183 + </span></span><span class="line"><span class="cl">sudo sysctl -p 184 + </span></span></code></pre></div><h3 id="3-installato-e-configurato-earlyoom">3. Installato e configurato earlyoom</h3> 185 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo apt install -y earlyoom 186 + </span></span></code></pre></div><p>Poi <code>/etc/default/earlyoom</code>:</p> 187 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nv">EARLYOOM_ARGS</span><span class="o">=</span><span class="s2">&#34;-m 5 -s 5 -k -n \ 188 + </span></span></span><span class="line"><span class="cl"><span class="s2"> --prefer &#39;(^|/)(firefox|chrome|chromium|electron|Isolated Web Co|Web Content)&#39; \ 189 + </span></span></span><span class="line"><span class="cl"><span class="s2"> --avoid &#39;(^|/)(gnome-shell|Xorg|Xwayland|systemd|sshd|gnome-session|gdm|dbus-daemon)&#39;&#34;</span> 190 + </span></span></code></pre></div><p>Questo dice a earlyoom di:</p> 191 + <ul> 192 + <li>Intervenire quando RAM o swap scendono sotto il 5%</li> 193 + <li>Preferire uccidere Firefox, Chrome, Electron (i colpevoli principali)</li> 194 + <li>Proteggere gnome-shell, Xorg e i processi di sistema</li> 195 + </ul> 196 + <h3 id="4-abilitato-zswap">4. Abilitato zswap</h3> 197 + <p>Ho modificato <code>/etc/default/grub</code> aggiungendo questi parametri al kernel:</p> 198 + <pre tabindex="0"><code>zswap.enabled=1 zswap.compressor=zstd zswap.max_pool_percent=25 zswap.zpool=z3fold 199 + </code></pre><p>Poi <code>sudo update-grub</code> e via.</p> 200 + <h2 id="come-è-configurato-ora-il-mio-sistema">Come è configurato ora il mio sistema</h2> 201 + <pre tabindex="0"><code>┌─────────────────────────────────────────────────────────┐ 202 + │ 16GB RAM │ 203 + │ ↓ │ 204 + │ ┌─────────────────────────────────────────────────┐ │ 205 + │ │ zswap (25% pool, compressione zstd) │ │ 206 + │ │ ~4GB → ~10GB effettivi con compressione 2.5x │ │ 207 + │ └─────────────────────────────────────────────────┘ │ 208 + │ ↓ │ 209 + │ ┌─────────────────────────────────────────────────┐ │ 210 + │ │ Disk Swap 8GB (fallback) │ │ 211 + │ │ swappiness=10 (usato solo se necessario) │ │ 212 + │ └─────────────────────────────────────────────────┘ │ 213 + │ ↓ │ 214 + │ ┌─────────────────────────────────────────────────┐ │ 215 + │ │ earlyoom │ │ 216 + │ │ Interviene a 5% RAM libera │ │ 217 + │ │ Preferisce: firefox, chrome, electron │ │ 218 + │ │ Protegge: gnome-shell, Xorg, systemd │ │ 219 + │ └─────────────────────────────────────────────────┘ │ 220 + └─────────────────────────────────────────────────────────┘ 221 + </code></pre><h2 id="risultato">Risultato</h2> 222 + <p>Ora se Firefox decide di mangiarsi 5GB di RAM per un tab impazzito:</p> 223 + <ol> 224 + <li>zswap comprime le pagine inattive, guadagnando tempo</li> 225 + <li>Se non basta, il disk swap assorbe il colpo</li> 226 + <li>Se ancora non basta, earlyoom uccide Firefox PRIMA che il sistema si blocchi</li> 227 + <li>Niente freeze</li> 228 + </ol> 229 + <p>Ho finito di configurare tutto e sto scrivendo questo post. Spero sia utile a qualcuno che ha lo stesso problema.</p> 230 + <hr> 231 + <p><em>Configurazione testata su Ubuntu 24.04.4 LTS (Noble Numbat) con 2 x 8 GB DRAM DDR4 a 3200 MHz. I link sono alle fonti che ho usato per capire come configurare il tutto.</em></p> 232 + 233 + </div> 234 + </article></main> 235 + </div> 236 + <footer class="footer"> 237 + <span class="footer_item"> </span> 238 + &nbsp; 239 + 240 + <div class="footer_social-icons"> 241 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 242 + title="Github"> 243 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 244 + stroke-linecap="round" stroke-linejoin="round"> 245 + <path 246 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 247 + </path> 248 + </svg> 249 + </a> 250 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 251 + title="Tangled"> 252 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 253 + <defs id="defs1"> 254 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 255 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 256 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 257 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 258 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 259 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 260 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 261 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 262 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 263 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 264 + </feComponentTransfer> 265 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 266 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 267 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 268 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 269 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 270 + </filter> 271 + </defs> 272 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 273 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 274 + </sodipodi:namedview> 275 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 276 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 277 + </g> 278 + </svg> 279 + </a> 280 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 281 + title="Bluesky"> 282 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 283 + stroke-linecap="round" stroke-linejoin="round"> 284 + <path 285 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 286 + </svg> 287 + </a> 288 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 289 + title="Goodreads"> 290 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 291 + <path 292 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 293 + </svg> 294 + </a> 295 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 296 + title="Rss"> 297 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 298 + stroke-linecap="round" stroke-linejoin="round"> 299 + <path d="M4 11a9 9 0 0 1 9 9" /> 300 + <path d="M4 4a16 16 0 0 1 16 16" /> 301 + <circle cx="5" cy="19" r="1" /> 302 + </svg> 303 + </a> 304 + </div> 305 + </footer><a href="#" title="Go to top" id="totop"> 306 + <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" fill="currentColor" stroke="currentColor" viewBox="0 96 960 960"> 307 + <path d="M283 704.739 234.261 656 480 410.261 725.739 656 677 704.739l-197-197-197 197Z"/> 308 + </svg> 309 + 310 + </a> 311 + 312 + 313 + 314 + 315 + 316 + 317 + 318 + 319 + 320 + 321 + 322 + 323 + 324 + 325 + 326 + 327 + 328 + 329 + 330 + 331 + <script async src="http://localhost:1313/js/main.js" ></script> 332 + 333 + 334 + 335 + </body> 336 + </html>
+4 -4
public/pages/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/pages/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/pages/" title="English" /> 22 22 23 23 24 24
+1 -1
public/pages/index.xml
··· 5 5 <link>https://vittoriogioda.com/pages/</link> 6 6 <description>Recent content in Pages on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="https://vittoriogioda.com/pages/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en-us</language><atom:link href="https://vittoriogioda.com/pages/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+14 -13
public/posts/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en" /> 19 + <meta name="language" content="en" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/posts/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/posts/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/posts/" title="Italiano" /> 22 24 23 25 24 26 ··· 37 39 38 40 39 41 <meta property="og:type" content="article" /> 40 - <meta property="og:article:published_time" content=2026-02-26T21:52:11&#43;0100 /> 41 - <meta property="article:published_time" content=2026-02-26T21:52:11&#43;0100 /> 42 + <meta property="og:article:published_time" content=2026-04-28T00:00:00Z /> 43 + <meta property="article:published_time" content=2026-04-28T00:00:00Z /> 42 44 <meta property="og:url" content="https://vittoriogioda.com/posts/" /> 43 45 44 46 ··· 59 61 "@type": "Person", 60 62 "name": "" 61 63 }, 62 - "datePublished": "2026-02-26", 64 + "datePublished": "2026-04-28", 63 65 "description": "", 64 66 "wordCount": 0 , 65 67 "mainEntityOfPage": "True", 66 - "dateModified": "2026-02-26", 68 + "dateModified": "2026-04-28", 67 69 "image": { 68 70 "@type": "imageObject", 69 71 "url": "" ··· 96 98 <link rel="canonical" href="https://vittoriogioda.com/posts/"> 97 99 <link href="/posts/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 98 100 <link href="/posts/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 99 - <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 101 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 100 102 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 101 103 102 104 ··· 173 175 <span>|</span> 174 176 </li> 175 177 176 - 177 178 </ul> 178 179 <a id="mode" href="#"> 179 180 <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> ··· 199 200 200 201 <article class="post-item"> 201 202 <h4 class="post-item-title"> 202 - <a href="/posts/test-post/">Writing posts</a> 203 + <a href="/posts/linux-out-of-memory/">Linux Ubuntu freeze Firefox</a> 203 204 </h4> 204 205 205 206 206 207 207 208 208 - <time class="post-item-meta" datetime="2026-02-26T21:52:11&#43;0100"> 209 - 26 Feb 2026 209 + <time class="post-item-meta" datetime="2026-04-28T00:00:00Z"> 210 + 28 Apr 2026 210 211 211 212 </time> 212 213 </article>
+8 -8
public/posts/index.xml
··· 5 5 <link>https://vittoriogioda.com/posts/</link> 6 6 <description>Recent content in Posts on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language> 9 - <lastBuildDate>Thu, 26 Feb 2026 21:52:11 +0100</lastBuildDate><atom:link href="https://vittoriogioda.com/posts/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en</language> 9 + <lastBuildDate>Tue, 28 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://vittoriogioda.com/posts/index.xml" rel="self" type="application/rss+xml" /> 10 10 <item> 11 - <title>Writing posts</title> 12 - <link>https://vittoriogioda.com/posts/test-post/</link> 13 - <pubDate>Thu, 26 Feb 2026 21:52:11 +0100</pubDate> 11 + <title>Linux Ubuntu freeze Firefox</title> 12 + <link>https://vittoriogioda.com/posts/linux-out-of-memory/</link> 13 + <pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate> 14 14 15 - <guid>https://vittoriogioda.com/posts/test-post/</guid> 15 + <guid>https://vittoriogioda.com/posts/linux-out-of-memory/</guid> 16 16 17 - <description>Writing is fun. Writing a blog is fun. 18 - Fun is fun.</description> 17 + <description>The problem Third time it’s happened. I open a few tabs in Firefox, work for a couple of hours, and at some point, the system locks up completely. Nothing works, no mouse, no keyboard. The only option is to hold down the power button: 18 + Out of memory: Killed process 154968 (Isolated Web Co) total-vm:8286172kB, anon-rss:5154148kB Firefox was eating 5GB of RAM. A single &amp;ldquo;Isolated Web Co&amp;rdquo; process (which is basically a Firefox tab or content process).</description> 19 19 20 20 </item> 21 21
public/posts/linux-out-of-memory/draw.png

This is a binary file and will not be displayed.

+399
public/posts/linux-out-of-memory/index.html
··· 1 + <!DOCTYPE html> 2 + <html lang="en"><head><meta charset="utf-8"> 3 + <meta http-equiv="content-type" content="text/html"> 4 + <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 + 6 + <title itemprop="name">Linux Ubuntu freeze Firefox | Vittorio Gioda</title> 7 + <meta property="og:title" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 8 + <meta name="twitter:title" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 9 + <meta itemprop="name" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 10 + <meta name="application-name" content="Linux Ubuntu freeze Firefox | Vittorio Gioda" /> 11 + <meta property="og:site_name" content="Vittorio Gioda" /> 12 + 13 + <meta name="description" content="How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap."> 14 + <meta itemprop="description" content="How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap." /> 15 + <meta property="og:description" content="How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap." /> 16 + <meta name="twitter:description" content="How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap." /> 17 + 18 + <meta property="og:locale" content="en" /> 19 + <meta name="language" content="en" /> 20 + 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/posts/linux-out-of-memory/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/posts/linux-out-of-memory/" title="Italiano" /> 24 + 25 + 26 + 27 + 28 + 29 + 30 + 31 + 32 + 33 + <meta property="og:type" content="article" /> 34 + <meta property="og:article:published_time" content=2026-04-28T00:00:00Z /> 35 + <meta property="article:published_time" content=2026-04-28T00:00:00Z /> 36 + <meta property="og:url" content="https://vittoriogioda.com/posts/linux-out-of-memory/" /> 37 + 38 + 39 + <meta property="og:article:author" content="Vittorio Gioda" /> 40 + <meta property="article:author" content="Vittorio Gioda" /> 41 + <meta name="author" content="Vittorio Gioda" /> 42 + 43 + 44 + 45 + 46 + 47 + <script defer type="application/ld+json"> 48 + { 49 + "@context": "http://schema.org", 50 + "@type": "Article", 51 + "headline": "Linux Ubuntu freeze Firefox", 52 + "author": { 53 + "@type": "Person", 54 + "name": "" 55 + }, 56 + "datePublished": "2026-04-28", 57 + "description": "How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap.", 58 + "wordCount": 569 , 59 + "mainEntityOfPage": "True", 60 + "dateModified": "2026-04-28", 61 + "image": { 62 + "@type": "imageObject", 63 + "url": "" 64 + }, 65 + "publisher": { 66 + "@type": "Organization", 67 + "name": "Vittorio Gioda" 68 + } 69 + } 70 + </script> 71 + 72 + 73 + <meta name="generator" content="Hugo 0.123.7"> 74 + 75 + 76 + <meta property="og:title" content="Linux Ubuntu freeze Firefox" /> 77 + <meta property="og:description" content="How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap." /> 78 + <meta property="og:type" content="article" /> 79 + <meta property="og:url" content="https://vittoriogioda.com/posts/linux-out-of-memory/" /><meta property="article:section" content="posts" /> 80 + <meta property="article:published_time" content="2026-04-28T00:00:00+00:00" /> 81 + <meta property="article:modified_time" content="2026-04-28T00:00:00+00:00" /> 82 + 83 + 84 + 85 + 86 + <meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Linux Ubuntu freeze Firefox"/> 87 + <meta name="twitter:description" content="How I fixed Ubuntu freezes caused by Firefox consuming all RAM by configuring swap, swappiness, earlyoom, and zswap."/> 88 + 89 + 90 + 91 + 92 + <link rel="canonical" href="https://vittoriogioda.com/posts/linux-out-of-memory/"> 93 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 94 + <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 95 + 96 + 97 + <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png"> 98 + <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png"> 99 + <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png"> 100 + <link rel="mask-icon" href="/icons/safari-pinned-tab.svg"> 101 + <link rel="shortcut icon" href="/favicon.ico"> 102 + 103 + 104 + 105 + 106 + <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 107 + 108 + <meta name="msapplication-config" content="/browserconfig.xml"> 109 + <meta name="msapplication-TileColor" content="#2d89ef"> 110 + <meta name="theme-color" content="#434648"> 111 + <meta name="color-scheme" content="light dark"> 112 + 113 + 114 + <link rel="icon" type="image/svg+xml" href="/icons/favicon.svg"> 115 + 116 + 117 + 118 + 119 + </head> 120 + <body data-theme = "dark" class="notransition"> 121 + 122 + <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 123 + 124 + <div class="navbar" role="navigation"> 125 + <nav class="menu" aria-label="Main Navigation"> 126 + <div></div> 127 + <input type="checkbox" id="menu-trigger" class="menu-trigger" /> 128 + <label for="menu-trigger"> 129 + <span class="menu-icon"> 130 + <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" stroke="currentColor" fill="none" viewBox="0 0 14 14"><title>Menu</title><path stroke-linecap="round" stroke-linejoin="round" d="M10.595 7L3.40726 7"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 3.51488L3.49301 3.51488"></path><path stroke-linecap="round" stroke-linejoin="round" d="M10.5096 10.4851H3.49301"></path><path stroke-linecap="round" stroke-linejoin="round" d="M0.5 12.5V1.5C0.5 0.947715 0.947715 0.5 1.5 0.5H12.5C13.0523 0.5 13.5 0.947715 13.5 1.5V12.5C13.5 13.0523 13.0523 13.5 12.5 13.5H1.5C0.947715 13.5 0.5 13.0523 0.5 12.5Z"></path></svg> 131 + </span> 132 + </label> 133 + 134 + <div class="trigger"> 135 + <ul class="trigger-container"> 136 + 137 + 138 + <li> 139 + <a class="menu-link " href="/"> 140 + Home 141 + </a> 142 + 143 + </li> 144 + 145 + <li> 146 + <a class="menu-link active" href="/posts/"> 147 + Posts 148 + </a> 149 + 150 + </li> 151 + 152 + <li> 153 + <a class="menu-link " href="/collection/"> 154 + Collection 155 + </a> 156 + 157 + </li> 158 + 159 + <li> 160 + <a class="menu-link " href="/cv/"> 161 + CV 162 + </a> 163 + 164 + </li> 165 + 166 + <li class="menu-separator"> 167 + <span>|</span> 168 + </li> 169 + 170 + <li> 171 + <select aria-label="Select Language" class="lang-list" id="select-language" onchange="location = this.value;"> 172 + 173 + 174 + 175 + 176 + 177 + 178 + 179 + 180 + <option id="en-us" value="https://vittoriogioda.com/posts/linux-out-of-memory/" selected>EN 181 + </option> 182 + 183 + 184 + 185 + 186 + 187 + 188 + 189 + 190 + 191 + 192 + 193 + 194 + 195 + <option id="it" value="https://vittoriogioda.com/it/posts/linux-out-of-memory/">IT</option> 196 + 197 + 198 + 199 + 200 + </select> 201 + </li> 202 + <li class="menu-separator"> 203 + <span>|</span> 204 + </li> 205 + 206 + </ul> 207 + <a id="mode" href="#"> 208 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-sunny" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 209 + <title>LIGHT</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 210 + <svg xmlns="http://www.w3.org/2000/svg" class="mode-moon" width="21" height="21" viewBox="0 0 14 14" stroke-width="1"> 211 + <title>DARK</title><g><circle cx="7" cy="7" r="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></circle><line x1="7" y1="0.5" x2="7" y2="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="2.4" x2="3.82" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="0.5" y1="7" x2="2.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="2.4" y1="11.6" x2="3.82" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="7" y1="13.5" x2="7" y2="11.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="11.6" x2="10.18" y2="10.18" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="13.5" y1="7" x2="11.5" y2="7" fill="none" stroke-linecap="round" stroke-linejoin="round"></line><line x1="11.6" y1="2.4" x2="10.18" y2="3.82" fill="none" stroke-linecap="round" stroke-linejoin="round"></line></g></svg> 212 + </a> 213 + </div> 214 + </nav> 215 + </div> 216 + 217 + <div class="wrapper post"> 218 + <main class="page-content" aria-label="Content"> 219 + <article> 220 + <header class="header"> 221 + <h1 class="header-title">Linux Ubuntu freeze Firefox</h1> 222 + 223 + 224 + 225 + <div class="post-meta"> 226 + <time datetime="2026-04-28T00:00:00&#43;00:00" itemprop="datePublished"> Apr 28, 2026 </time> 227 + </div> 228 + 229 + </header> 230 + 231 + <div class="page-content"> 232 + <h2 id="the-problem">The problem</h2> 233 + <p>Third time it’s happened. I open a few tabs in Firefox, work for a couple of hours, and at some point, the system locks up completely. Nothing works, no mouse, no keyboard. The only option is to hold down the power button:</p> 234 + <pre tabindex="0"><code>Out of memory: Killed process 154968 (Isolated Web Co) 235 + total-vm:8286172kB, anon-rss:5154148kB 236 + </code></pre><p><strong>Firefox was eating 5GB of RAM.</strong> A single &ldquo;Isolated Web Co&rdquo; process (which is basically a Firefox tab or content process).</p> 237 + <p>Using <code>last -x</code>, I saw the system had crashed at 11:12, and there were no OOM messages in the logs before the crash. This means the system froze so quickly that the OOM killer didn&rsquo;t have time to intervene.</p> 238 + <p>My config:</p> 239 + <ul> 240 + <li>16GB RAM</li> 241 + <li>4GB swap</li> 242 + <li>swappiness at 60 (default)</li> 243 + </ul> 244 + <p>Too little swap, and when RAM fills up quickly, the kernel doesn&rsquo;t have time to kill processes before everything stalls.</p> 245 + <p>I looked around to understand how to better configure the system. Here are some useful things:</p> 246 + <h3 id="swap-size">Swap size</h3> 247 + <p><a href="https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/managing_storage_devices/getting-started-with-swap_managing-storage-devices">Red Hat Documentation</a> and <a href="https://thelinuxcode.com/change_swap_size_ubuntu/">TheLinuxCode</a> state that for systems with more than 8GB of RAM, you should have at least 4GB of swap, but if you experience memory pressure, it’s better to go with 8GB. I was exactly at 4GB, so I decided to increase it to 8GB.</p> 248 + <h3 id="earlyoom">Earlyoom</h3> 249 + <p>Then I discovered <a href="https://github.com/rfjakob/earlyoom">earlyoom</a>. This is a daemon that monitors memory and kills processes <em>before</em> the system locks up. Unlike the kernel&rsquo;s OOM killer which intervenes when it&rsquo;s already too late, earlyoom acts when free memory drops below a certain threshold.</p> 250 + <p><a href="https://oneuptime.com/blog/post/2026-03-02-how-to-use-earlyoom-for-proactive-oom-prevention-on-ubuntu/view">This article by OneUptime</a> explains how to configure it for desktop, using the <code>--prefer</code> and <code>--avoid</code> options to decide what to kill and what to protect.</p> 251 + <h3 id="zswap">Zswap</h3> 252 + <p>Finally, I found <a href="https://chrisdown.name/2026/03/24/zswap-vs-zram-when-to-use-what.html">zswap</a>. It is a compressed cache that sits between RAM and disk swap. When memory fills up, zswap compresses inactive pages instead of writing them immediately to disk. Compared to pure zram, zswap integrates better with existing disk swap and doesn&rsquo;t break hibernation.</p> 253 + <p>On <a href="https://www.howtogeek.com/even-if-you-have-16gb-of-ram-this-one-compressed-swap-trick-makes-linux-significantly-smoother/">HowToGeek</a> there is a very clear explanation of why zswap helps even on systems with &ldquo;enough&rdquo; RAM.</p> 254 + <h2 id="solutions-applied">Solutions applied</h2> 255 + <h3 id="1-increased-swap-to-8gb">1. Increased swap to 8GB</h3> 256 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo swapoff -a 257 + </span></span><span class="line"><span class="cl">sudo rm /swap.img 258 + </span></span><span class="line"><span class="cl">sudo fallocate -l 8G /swap.img 259 + </span></span><span class="line"><span class="cl">sudo chmod <span class="m">600</span> /swap.img 260 + </span></span><span class="line"><span class="cl">sudo mkswap /swap.img 261 + </span></span><span class="line"><span class="cl">sudo swapon /swap.img 262 + </span></span></code></pre></div><h3 id="2-set-swappiness-to-10">2. Set swappiness to 10</h3> 263 + <p>This way, the kernel prefers using RAM and only uses swap when truly necessary:</p> 264 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;vm.swappiness=10&#34;</span> <span class="p">|</span> sudo tee -a /etc/sysctl.conf 265 + </span></span><span class="line"><span class="cl">sudo sysctl -p 266 + </span></span></code></pre></div><h3 id="3-installed-and-configured-earlyoom">3. Installed and configured earlyoom</h3> 267 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo apt install -y earlyoom 268 + </span></span></code></pre></div><p>Then <code>/etc/default/earlyoom</code>:</p> 269 + <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nv">EARLYOOM_ARGS</span><span class="o">=</span><span class="s2">&#34;-m 5 -s 5 -k -n \ 270 + </span></span></span><span class="line"><span class="cl"><span class="s2"> --prefer &#39;(^|/)(firefox|chrome|chromium|electron|Isolated Web Co|Web Content)&#39; \ 271 + </span></span></span><span class="line"><span class="cl"><span class="s2"> --avoid &#39;(^|/)(gnome-shell|Xorg|Xwayland|systemd|sshd|gnome-session|gdm|dbus-daemon)&#39;&#34;</span> 272 + </span></span></code></pre></div><p>This tells earlyoom to:</p> 273 + <ul> 274 + <li>Intervene when RAM or swap drops below 5%</li> 275 + <li>Prefer killing Firefox, Chrome, Electron (the main culprits)</li> 276 + <li>Protect gnome-shell, Xorg, and system processes</li> 277 + </ul> 278 + <h3 id="4-enabled-zswap">4. Enabled zswap</h3> 279 + <p>I modified <code>/etc/default/grub</code> adding these parameters to the kernel:</p> 280 + <pre tabindex="0"><code>zswap.enabled=1 zswap.compressor=zstd zswap.max_pool_percent=25 zswap.zpool=z3fold 281 + </code></pre><p>Then <code>sudo update-grub</code>.</p> 282 + <h2 id="how-my-system-is-configured-now">How my system is configured now</h2> 283 + <p><img alt="Draw" src="/posts/linux-out-of-memory/draw.png"></p> 284 + <h2 id="result">Result</h2> 285 + <p>Now if Firefox decides to eat 5GB of RAM for a runaway tab:</p> 286 + <ol> 287 + <li>zswap compresses inactive pages, gaining time</li> 288 + <li>If that&rsquo;s not enough, disk swap absorbs the hit</li> 289 + <li>If still not enough, earlyoom kills Firefox BEFORE the system freezes</li> 290 + <li>No freezes</li> 291 + </ol> 292 + <p>I’ve finished configuring everything and I’m writing this post. I hope it’s useful to someone having the same problem.</p> 293 + <hr> 294 + <p><em>Configuration tested on Ubuntu 24.04.4 LTS (Noble Numbat) with 2 x 8 GB DRAM DDR4 at 3200 MHz. Links lead to the sources I used to understand the setup.</em></p> 295 + 296 + </div> 297 + </article></main> 298 + </div> 299 + <footer class="footer"> 300 + <span class="footer_item"> </span> 301 + &nbsp; 302 + 303 + <div class="footer_social-icons"> 304 + <a href="https://github.com/teygeta" target="_blank" rel="noopener noreferrer me" 305 + title="Github"> 306 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 307 + stroke-linecap="round" stroke-linejoin="round"> 308 + <path 309 + d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"> 310 + </path> 311 + </svg> 312 + </a> 313 + <a href="https://tangled.org/vittoriogioda.com/" target="_blank" rel="noopener noreferrer me" 314 + title="Tangled"> 315 + <svg version="1.1" fill="currentColor" id="svg1" width="24" height="24" viewBox="0 0 24 24" sodipodi:docname="tangled_dolly_face_only.svg" inkscape:export-filename="tangled_dolly_face_only_white_on_trans.svg" inkscape:export-xdpi="96" inkscape:export-ydpi="96" inkscape:version="1.4 (e7c3feb100, 2024-10-09)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> 316 + <defs id="defs1"> 317 + <filter style="color-interpolation-filters:sRGB" inkscape:menu-tooltip="Fades hue progressively to white" inkscape:menu="Color" inkscape:label="Hue to White" id="filter24" x="0" y="0" width="1" height="1"> 318 + <feColorMatrix values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 " type="matrix" result="r" in="SourceGraphic" id="feColorMatrix17"/> 319 + <feColorMatrix values="0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 " type="matrix" result="g" in="SourceGraphic" id="feColorMatrix18"/> 320 + <feColorMatrix values="0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 " type="matrix" result="b" in="SourceGraphic" id="feColorMatrix19"/> 321 + <feBlend result="minrg" in="r" mode="darken" in2="g" id="feBlend19"/> 322 + <feBlend result="p" in="minrg" mode="darken" in2="b" id="feBlend20"/> 323 + <feBlend result="maxrg" in="r" mode="lighten" in2="g" id="feBlend21"/> 324 + <feBlend result="q" in="maxrg" mode="lighten" in2="b" id="feBlend22"/> 325 + <feComponentTransfer result="q2" in="q" id="feComponentTransfer22"> 326 + <feFuncR slope="0" type="linear" id="feFuncR22"/> 327 + </feComponentTransfer> 328 + <feBlend result="pq" in="p" mode="lighten" in2="q2" id="feBlend23"/> 329 + <feColorMatrix values="-1 1 0 0 0 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 1 " type="matrix" result="qminp" in="pq" id="feColorMatrix23"/> 330 + <feComposite k3="1" operator="arithmetic" result="qminpc" in="qminp" in2="qminp" id="feComposite23" k1="0" k2="0" k4="0"/> 331 + <feBlend result="result2" in2="SourceGraphic" mode="screen" id="feBlend24"/> 332 + <feComposite operator="in" in="result2" in2="SourceGraphic" result="result1" id="feComposite24"/> 333 + </filter> 334 + </defs> 335 + <sodipodi:namedview id="namedview1" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="true" inkscape:deskcolor="#d5d5d5" inkscape:zoom="7.0916564" inkscape:cx="38.84847" inkscape:cy="31.515909" inkscape:window-width="1920" inkscape:window-height="1080" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="0" inkscape:current-layer="g1"> 336 + <inkscape:page x="0" y="0" width="24" height="24" id="page2" margin="0" bleed="0"/> 337 + </sodipodi:namedview> 338 + <g inkscape:groupmode="layer" inkscape:label="Image" id="g1" transform="translate(-0.4388285,-0.8629527)"> 339 + <path style="fill-opacity:1;stroke-width:0.111183;filter:url(#filter24)" d="m 16.348974,24.09935 -0.06485,-0.03766 -0.202005,-0.0106 -0.202008,-0.01048 -0.275736,-0.02601 -0.275734,-0.02602 v -0.02649 -0.02648 l -0.204577,-0.04019 -0.204578,-0.04019 -0.167616,-0.08035 -0.167617,-0.08035 -0.0014,-0.04137 -0.0014,-0.04137 -0.266473,-0.143735 -0.266475,-0.143735 -0.276098,-0.20335 -0.2761,-0.203347 -0.262064,-0.251949 -0.262064,-0.25195 -0.22095,-0.284628 -0.220948,-0.284629 -0.170253,-0.284631 -0.170252,-0.284628 -0.01341,-0.0144 -0.0134,-0.0144 -0.141982,0.161297 -0.14198,0.1613 -0.22313,0.21426 -0.223132,0.214264 -0.186025,0.146053 -0.186023,0.14605 -0.252501,0.163342 -0.252502,0.163342 -0.249014,0.115348 -0.249013,0.115336 0.0053,0.03241 0.0053,0.03241 -0.1716725,0.04599 -0.171669,0.046 -0.3379966,0.101058 -0.3379972,0.101058 -0.1778925,0.04506 -0.1778935,0.04508 -0.3913655,0.02601 -0.3913643,0.02603 -0.3557868,-0.03514 -0.3557863,-0.03514 -0.037426,-0.03029 -0.037427,-0.03029 -0.076924,0.02011 -0.076924,0.02011 -0.050508,-0.05051 -0.050405,-0.05056 L 6.6604532,23.110188 6.451745,23.063961 6.1546135,22.960559 5.8574835,22.857156 5.5319879,22.694039 5.2064938,22.530922 4.8793922,22.302961 4.5522905,22.075005 4.247598,21.786585 3.9429055,21.49817 3.7185335,21.208777 3.4941628,20.919385 3.3669822,20.705914 3.239803,20.492443 3.1335213,20.278969 3.0272397,20.065499 2.9015252,19.7275 2.7758105,19.389504 2.6925225,18.998139 2.6092345,18.606774 2.6096814,17.91299 2.6101284,17.219208 2.6744634,16.90029 2.7387984,16.581374 2.8474286,16.242088 2.9560588,15.9028 3.1137374,15.583492 3.2714148,15.264182 3.3415068,15.150766 3.4115988,15.03735 3.3127798,14.96945 3.2139618,14.90157 3.0360685,14.800239 2.8581753,14.698908 2.5913347,14.503228 2.3244955,14.307547 2.0621238,14.055599 1.7997507,13.803651 1.6111953,13.56878 1.4226411,13.333906 1.2632237,13.087474 1.1038089,12.841042 0.97442,12.575195 0.8450307,12.30935 0.724603,11.971351 0.6041766,11.633356 0.52150365,11.241991 0.4388285,10.850626 0.44091592,10.156842 0.44300333,9.4630594 0.54235911,9.0369608 0.6417149,8.6108622 0.7741173,8.2694368 0.9065196,7.9280115 1.0736303,7.6214262 1.2407515,7.3148397 1.45931,7.0191718 1.6778685,6.7235039 1.9300326,6.4611321 2.1821966,6.1987592 2.4134579,6.0137228 2.6447193,5.8286865 2.8759792,5.6776409 3.1072406,5.526594 3.4282004,5.3713977 3.7491603,5.2162016 3.9263009,5.1508695 4.1034416,5.0855373 4.2813348,4.7481598 4.4592292,4.4107823 4.6718,4.108422 4.8843733,3.8060618 5.198353,3.4805372 5.5123313,3.155014 5.7685095,2.9596425 6.0246877,2.7642722 6.329187,2.5851365 6.6336863,2.406002 6.9497657,2.2751596 7.2658453,2.1443184 7.4756394,2.0772947 7.6854348,2.01027 8.0825241,1.931086 8.4796139,1.851902 l 0.5870477,0.00291 0.5870469,0.00291 0.4447315,0.092455 0.444734,0.092455 0.302419,0.1105495 0.302417,0.1105495 0.329929,0.1646046 0.32993,0.1646033 0.239329,-0.2316919 0.239329,-0.2316919 0.160103,-0.1256767 0.160105,-0.1256767 0.160102,-0.1021909 0.160105,-0.1021899 0.142315,-0.082328 0.142314,-0.082328 0.231262,-0.1090091 0.231259,-0.1090091 0.26684,-0.098743 0.266839,-0.098743 0.320208,-0.073514 0.320209,-0.073527 0.355787,-0.041833 0.355785,-0.041834 0.426942,0.023827 0.426945,0.023828 0.355785,0.071179 0.355788,0.0711791 0.284627,0.09267 0.284629,0.09267 0.28514,0.1310267 0.28514,0.1310255 0.238179,0.1446969 0.238174,0.1446979 0.259413,0.1955332 0.259413,0.1955319 0.290757,0.296774 0.290758,0.2967753 0.151736,0.1941581 0.151734,0.1941594 0.135326,0.2149951 0.135327,0.2149952 0.154755,0.3202073 0.154758,0.3202085 0.09409,0.2677358 0.09409,0.267737 0.06948,0.3319087 0.06948,0.3319099 0.01111,0.00808 0.01111,0.00808 0.444734,0.2173653 0.444734,0.2173665 0.309499,0.2161102 0.309497,0.2161101 0.309694,0.2930023 0.309694,0.2930037 0.18752,0.2348726 0.187524,0.2348727 0.166516,0.2574092 0.166519,0.2574108 0.15273,0.3260252 0.152734,0.3260262 0.08972,0.2668403 0.08971,0.2668391 0.08295,0.3913655 0.08295,0.3913652 -6.21e-4,0.6582049 -6.21e-4,0.658204 -0.06362,0.315725 -0.06362,0.315725 -0.09046,0.289112 -0.09046,0.289112 -0.122759,0.281358 -0.12276,0.281356 -0.146626,0.252323 -0.146629,0.252322 -0.190443,0.258668 -0.190448,0.258671 -0.254911,0.268356 -0.254911,0.268355 -0.286872,0.223127 -0.286874,0.223127 -0.320203,0.187693 -0.320209,0.187693 -0.04347,0.03519 -0.04347,0.03521 0.0564,0.12989 0.0564,0.129892 0.08728,0.213472 0.08728,0.213471 0.189755,0.729363 0.189753,0.729362 0.0652,0.302417 0.0652,0.302419 -0.0018,0.675994 -0.0018,0.675995 -0.0801,0.373573 -0.08009,0.373577 -0.09,0.266839 -0.09,0.26684 -0.190389,0.391364 -0.19039,0.391366 -0.223169,0.320207 -0.223167,0.320209 -0.303585,0.315294 -0.303584,0.315291 -0.284631,0.220665 -0.284629,0.220663 -0.220128,0.132359 -0.220127,0.132358 -0.242395,0.106698 -0.242394,0.106699 -0.08895,0.04734 -0.08895,0.04733 -0.249052,0.07247 -0.24905,0.07247 -0.322042,0.0574 -0.322044,0.0574 -0.282794,-0.003 -0.282795,-0.003 -0.07115,-0.0031 -0.07115,-0.0031 -0.177894,-0.0033 -0.177893,-0.0033 -0.124528,0.02555 -0.124528,0.02555 z m -4.470079,-5.349839 0.214838,-0.01739 0.206601,-0.06782 0.206602,-0.06782 0.244389,-0.117874 0.244393,-0.11786 0.274473,-0.206822 0.27447,-0.20682 0.229308,-0.257201 0.229306,-0.2572 0.219161,-0.28463 0.219159,-0.284629 0.188541,-0.284628 0.188543,-0.28463 0.214594,-0.373574 0.214593,-0.373577 0.133861,-0.312006 0.133865,-0.312007 0.02861,-0.01769 0.02861,-0.01769 0.197275,0.26212 0.197278,0.262119 0.163613,0.150814 0.163614,0.150814 0.201914,0.09276 0.201914,0.09276 0.302417,0.01421 0.302418,0.01421 0.213472,-0.08025 0.213471,-0.08025 0.200606,-0.204641 0.200606,-0.204642 0.09242,-0.278887 0.09241,-0.278888 0.05765,-0.302418 0.05764,-0.302416 L 18.41327,13.768114 18.39502,13.34117 18.31849,12.915185 18.24196,12.4892 18.15595,12.168033 18.06994,11.846867 17.928869,11.444534 17.787801,11.042201 17.621278,10.73296 17.454757,10.423723 17.337388,10.263619 17.220021,10.103516 17.095645,9.9837986 16.971268,9.8640816 16.990048,9.6813736 17.008828,9.4986654 16.947568,9.249616 16.886308,9.0005655 16.752419,8.7159355 16.618521,8.4313217 16.435707,8.2294676 16.252892,8.0276114 16.079629,7.9004245 15.906366,7.773238 l -0.20429,0.1230127 -0.204289,0.1230121 -0.26702,0.059413 -0.267022,0.059413 -0.205761,-0.021508 -0.205766,-0.021508 -0.23495,-0.08844 -0.234953,-0.08844 -0.118429,-0.090334 -0.118428,-0.090333 h -0.03944 -0.03944 L 13.711268,7.8540732 13.655958,7.9706205 13.497227,8.1520709 13.338499,8.3335203 13.168394,8.4419112 12.998289,8.550301 12.777045,8.624223 12.5558,8.698155 H 12.275611 11.995429 L 11.799973,8.6309015 11.604513,8.5636472 11.491311,8.5051061 11.37811,8.446565 11.138172,8.2254579 10.898231,8.0043497 l -0.09565,-0.084618 -0.09565,-0.084613 -0.218822,0.198024 -0.218822,0.1980231 -0.165392,0.078387 -0.1653925,0.078387 -0.177894,0.047948 -0.177892,0.047948 L 9.3635263,8.4842631 9.144328,8.4846889 8.9195029,8.4147138 8.6946778,8.3447386 8.5931214,8.4414036 8.491565,8.5380686 8.3707618,8.7019598 8.2499597,8.8658478 8.0802403,8.9290726 7.9105231,8.9922974 7.7952769,9.0780061 7.6800299,9.1637148 7.5706169,9.2778257 7.4612038,9.3919481 7.1059768,9.9205267 6.7507497,10.449105 l -0.2159851,0.449834 -0.2159839,0.449834 -0.2216572,0.462522 -0.2216559,0.462523 -0.1459343,0.337996 -0.1459342,0.337998 -0.055483,0.220042 -0.055483,0.220041 -0.015885,0.206903 -0.015872,0.206901 0.034307,0.242939 0.034307,0.24294 0.096281,0.196632 0.096281,0.196634 0.143607,0.125222 0.1436071,0.125222 0.1873143,0.08737 0.1873141,0.08737 0.2752084,0.002 0.2752084,0.002 0.2312297,-0.09773 0.231231,-0.09772 0.1067615,-0.07603 0.1067614,-0.07603 0.3679062,-0.29377 0.3679065,-0.293771 0.026804,0.01656 0.026804,0.01656 0.023626,0.466819 0.023626,0.466815 0.088326,0.513195 0.088326,0.513193 0.08897,0.364413 0.08897,0.364411 0.1315362,0.302418 0.1315352,0.302418 0.1051964,0.160105 0.1051954,0.160103 0.1104741,0.11877 0.1104731,0.118769 0.2846284,0.205644 0.2846305,0.205642 0.144448,0.07312 0.144448,0.07312 0.214787,0.05566 0.214787,0.05566 0.245601,0.03075 0.245602,0.03075 0.204577,-0.0125 0.204578,-0.0125 z m 0.686342,-3.497495 -0.11281,-0.06077 -0.106155,-0.134033 -0.106155,-0.134031 -0.04406,-0.18371 -0.04406,-0.183707 0.02417,-0.553937 0.02417,-0.553936 0.03513,-0.426945 0.03513,-0.426942 0.07225,-0.373576 0.07225,-0.373575 0.05417,-0.211338 0.05417,-0.211339 0.0674,-0.132112 0.0674,-0.132112 0.132437,-0.10916 0.132437,-0.109161 0.187436,-0.04195 0.187438,-0.04195 0.170366,0.06469 0.170364,0.06469 0.114312,0.124073 0.114313,0.124086 0.04139,0.18495 0.04139,0.184951 -0.111218,0.459845 -0.111219,0.459844 -0.03383,0.26584 -0.03382,0.265841 -0.03986,0.818307 -0.03986,0.818309 -0.0378,0.15162 -0.03779,0.151621 -0.11089,0.110562 -0.110891,0.110561 -0.114489,0.04913 -0.114489,0.04913 -0.187932,-0.0016 -0.187929,-0.0016 z m -2.8087655,-0.358124 -0.146445,-0.06848 -0.088025,-0.119502 -0.088024,-0.119502 -0.038581,-0.106736 -0.038581,-0.106736 -0.02237,-0.134956 -0.02239,-0.134957 -0.031955,-0.46988 -0.031955,-0.469881 0.036203,-0.444733 0.036203,-0.444731 0.048862,-0.215257 0.048862,-0.215255 0.076082,-0.203349 0.076081,-0.203348 0.0936,-0.111244 0.0936,-0.111245 0.143787,-0.06531 0.1437865,-0.06532 h 0.142315 0.142314 l 0.142314,0.06588 0.142316,0.06588 0.093,0.102325 0.093,0.102325 0.04042,0.120942 0.04042,0.120942 v 0.152479 0.152477 l -0.03347,0.08804 -0.03347,0.08805 -0.05693,0.275653 -0.05693,0.275651 2.11e-4,0.430246 2.12e-4,0.430243 0.04294,0.392646 0.04295,0.392647 -0.09189,0.200702 -0.09189,0.200702 -0.148688,0.0984 -0.148687,0.0984 -0.20136,0.01212 -0.2013595,0.01212 z" id="path4"/> 340 + </g> 341 + </svg> 342 + </a> 343 + <a href="https://bsky.app/profile/vittoriogioda.com" target="_blank" rel="noopener noreferrer me" 344 + title="Bluesky"> 345 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" stroke="none" stroke-width="2" 346 + stroke-linecap="round" stroke-linejoin="round"> 347 + <path 348 + d="M11.999,10.236c0.321,-0.524 0.916,-1.507 1.405,-2.376c0.755,-1.344 1.692,-2.852 2.869,-4.028c1.283,-1.281 2.845,-2.171 4.739,-2.171c1.144,-0 1.864,0.585 2.299,1.497c0.486,1.017 0.545,2.551 0.51,3.883c-0.051,1.945 -0.232,3.337 -0.505,4.275c-0.229,0.786 -0.543,1.303 -0.878,1.615c-0.892,0.833 -1.8,1.263 -2.634,1.484c0.029,0.018 0.056,0.036 0.084,0.055c0.528,0.367 0.823,0.79 1.081,1.107c0.648,0.794 0.644,1.795 0.23,2.784c-0.481,1.151 -1.533,2.279 -2.12,2.773c-1.389,1.171 -2.506,1.362 -3.383,1.133c-0.88,-0.23 -1.59,-0.932 -2.156,-1.826c-0.45,-0.71 -0.817,-1.537 -1.176,-2.186c-0.115,-0.208 -0.302,-0.455 -0.406,-0.587c-0.02,0.019 -0.04,0.04 -0.056,0.058c-0.121,0.145 -0.234,0.328 -0.349,0.531c-0.363,0.644 -0.721,1.463 -1.157,2.166c-0.555,0.895 -1.252,1.597 -2.12,1.825c-0.863,0.227 -1.97,0.037 -3.363,-1.136c-0.586,-0.494 -1.638,-1.622 -2.119,-2.773c-0.414,-0.989 -0.418,-1.99 0.229,-2.784c0.258,-0.317 0.554,-0.74 1.082,-1.106c0.027,-0.019 0.055,-0.038 0.084,-0.056c-0.834,-0.221 -1.742,-0.651 -2.634,-1.484c-0.335,-0.312 -0.649,-0.829 -0.878,-1.615c-0.273,-0.938 -0.454,-2.33 -0.505,-4.275c-0.036,-1.332 0.024,-2.866 0.509,-3.883c0.435,-0.912 1.156,-1.497 2.3,-1.497c2.32,0 4.109,1.203 5.494,2.808c1.272,1.474 2.195,3.283 2.9,4.643c0.231,0.447 0.436,0.84 0.624,1.146Zm-0.01,5.653l0.296,0.031l0.271,0.086c0.208,0.088 0.413,0.229 0.607,0.428c0.455,0.467 0.882,1.369 1.36,2.284c0.249,0.477 0.518,0.958 0.841,1.339c0.231,0.274 0.483,0.502 0.805,0.569c0.488,0.103 1.052,-0.157 1.811,-0.797c0.452,-0.38 1.274,-1.239 1.645,-2.126c0.155,-0.371 0.265,-0.75 0.022,-1.048c-0.179,-0.22 -0.366,-0.529 -0.732,-0.783c-0.536,-0.372 -1.356,-0.51 -1.905,-0.654c-0.405,-0.106 -0.715,-0.234 -0.88,-0.355l-0.284,-0.303l-0.135,-0.367l-0.008,-0.211l0.035,-0.196l0.078,-0.195l0.142,-0.209l0.198,-0.181l0.296,-0.154c0.151,-0.055 0.348,-0.092 0.587,-0.104c0.815,-0.042 2.571,0.294 4.235,-1.259c0.171,-0.159 0.288,-0.445 0.404,-0.845c0.246,-0.843 0.391,-2.096 0.438,-3.843c0.024,-0.91 0.026,-1.938 -0.208,-2.738c-0.142,-0.486 -0.367,-0.891 -0.896,-0.891c-1.675,0 -2.974,0.983 -4.031,2.21c-1.179,1.369 -2.058,3.057 -2.752,4.321c-0.483,0.88 -0.902,1.573 -1.25,1.916c-0.088,0.086 -0.174,0.157 -0.257,0.214l-0.221,0.125l-0.228,0.078l-0.267,0.031l-0.274,-0.034l-0.231,-0.083l-0.219,-0.132c-0.081,-0.058 -0.164,-0.131 -0.248,-0.22c-0.327,-0.343 -0.718,-1.037 -1.174,-1.917c-0.654,-1.262 -1.497,-2.948 -2.676,-4.314c-1.067,-1.236 -2.417,-2.217 -4.203,-2.217c-0.53,0 -0.754,0.405 -0.896,0.891c-0.234,0.8 -0.232,1.828 -0.208,2.738c0.046,1.747 0.192,3 0.438,3.843c0.116,0.4 0.233,0.686 0.403,0.845c1.665,1.553 3.421,1.217 4.235,1.259c0.24,0.012 0.437,0.049 0.588,0.104l0.295,0.154l0.199,0.181l0.142,0.209l0.078,0.195l0.035,0.196l-0.009,0.211l-0.135,0.368l-0.283,0.303c-0.165,0.12 -0.476,0.248 -0.88,0.355c-0.549,0.144 -1.369,0.281 -1.905,0.653c-0.366,0.254 -0.554,0.564 -0.732,0.783c-0.243,0.298 -0.133,0.677 0.022,1.048c0.371,0.887 1.193,1.746 1.645,2.127c0.757,0.637 1.311,0.9 1.789,0.8c0.311,-0.066 0.55,-0.29 0.772,-0.557c0.315,-0.381 0.577,-0.86 0.822,-1.337c0.394,-0.763 0.752,-1.521 1.138,-2.01c0.431,-0.544 0.929,-0.815 1.455,-0.815Z" style="fill-rule:nonzero;"/> 349 + </svg> 350 + </a> 351 + <a href="https://www.goodreads.com/user/show/189616321-vittorio-gioda" target="_blank" rel="noopener noreferrer me" 352 + title="Goodreads"> 353 + <svg xmlns="http://www.w3.org/2000/svg" role="img" fill="currentColor" viewBox="0 0 24 24"> 354 + <path 355 + d="M11.43 23.995c-3.608-.208-6.274-2.077-6.448-5.078.695.007 1.375-.013 2.07-.006.224 1.342 1.065 2.43 2.683 3.026 1.583.496 3.737.46 5.082-.174 1.351-.636 2.145-1.822 2.503-3.577.212-1.042.236-1.734.231-2.92l-.005-1.631h-.059c-1.245 2.564-3.315 3.53-5.59 3.475-5.74-.054-7.68-4.534-7.528-8.606.01-5.241 3.22-8.537 7.557-8.495 2.354-.14 4.605 1.362 5.554 3.37l.059.002.002-2.918 2.099.004-.002 15.717c-.193 7.04-4.376 7.89-8.209 7.811zm6.1-15.633c-.096-3.26-1.601-6.62-5.503-6.645-3.954-.017-5.625 3.592-5.604 6.85-.013 3.439 1.643 6.305 4.703 6.762 4.532.591 6.551-3.411 6.404-6.967z" /> 356 + </svg> 357 + </a> 358 + <a href="/index.xml" target="_blank" rel="noopener noreferrer me" 359 + title="Rss"> 360 + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" 361 + stroke-linecap="round" stroke-linejoin="round"> 362 + <path d="M4 11a9 9 0 0 1 9 9" /> 363 + <path d="M4 4a16 16 0 0 1 16 16" /> 364 + <circle cx="5" cy="19" r="1" /> 365 + </svg> 366 + </a> 367 + </div> 368 + </footer><a href="#" title="Go to top" id="totop"> 369 + <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" fill="currentColor" stroke="currentColor" viewBox="0 96 960 960"> 370 + <path d="M283 704.739 234.261 656 480 410.261 725.739 656 677 704.739l-197-197-197 197Z"/> 371 + </svg> 372 + 373 + </a> 374 + 375 + 376 + 377 + 378 + 379 + 380 + 381 + 382 + 383 + 384 + 385 + 386 + 387 + 388 + 389 + 390 + 391 + 392 + 393 + 394 + <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 395 + 396 + 397 + 398 + </body> 399 + </html>
+1 -1
public/posts/page/1/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"> 2 + <html lang="en"> 3 3 <head> 4 4 <title>https://vittoriogioda.com/posts/</title> 5 5 <link rel="canonical" href="https://vittoriogioda.com/posts/">
+11 -12
public/posts/test-post/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Description is incredible" /> 16 16 <meta name="twitter:description" content="Description is incredible" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/posts/test-post/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="http://localhost:1313/posts/test-post/" title="English" /> 22 22 23 23 24 24 ··· 31 31 <meta property="og:type" content="article" /> 32 32 <meta property="og:article:published_time" content=2026-02-26T21:52:11&#43;0100 /> 33 33 <meta property="article:published_time" content=2026-02-26T21:52:11&#43;0100 /> 34 - <meta property="og:url" content="https://vittoriogioda.com/posts/test-post/" /> 34 + <meta property="og:url" content="http://localhost:1313/posts/test-post/" /> 35 35 36 36 37 37 <meta property="og:article:author" content="Vittorio Gioda" /> ··· 74 74 <meta property="og:title" content="Writing posts" /> 75 75 <meta property="og:description" content="Description is incredible" /> 76 76 <meta property="og:type" content="article" /> 77 - <meta property="og:url" content="https://vittoriogioda.com/posts/test-post/" /><meta property="article:section" content="posts" /> 77 + <meta property="og:url" content="http://localhost:1313/posts/test-post/" /><meta property="article:section" content="posts" /> 78 78 <meta property="article:published_time" content="2026-02-26T21:52:11+01:00" /> 79 79 <meta property="article:modified_time" content="2026-02-26T21:52:11+01:00" /> 80 80 ··· 87 87 88 88 89 89 90 - <link rel="canonical" href="https://vittoriogioda.com/posts/test-post/"> 90 + <link rel="canonical" href="http://localhost:1313/posts/test-post/"> 91 91 <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 92 92 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 93 93 ··· 101 101 102 102 103 103 104 - <link rel="manifest" href="https://vittoriogioda.com/site.webmanifest"> 104 + <link rel="manifest" href="http://localhost:1313/site.webmanifest"> 105 105 106 106 <meta name="msapplication-config" content="/browserconfig.xml"> 107 107 <meta name="msapplication-TileColor" content="#2d89ef"> ··· 113 113 114 114 115 115 116 - 117 116 </head> 118 117 <body data-theme = "dark" class="notransition"> 119 118 120 - <script src="/js/theme.min.8961c317c5b88b953fe27525839672c9343f1058ab044696ca225656c8ba2ab0.js" integrity="sha256-iWHDF8W4i5U/4nUlg5ZyyTQ/EFirBEaWyiJWVsi6KrA="></script> 119 + <script src="/js/theme.js"></script> 121 120 122 121 <div class="navbar" role="navigation"> 123 122 <nav class="menu" aria-label="Main Navigation"> ··· 194 193 <div class="page-content"> 195 194 <p>Writing is fun. 196 195 Writing a blog is fun.</p> 197 - <p>Fun is <strong>fun</strong>.</p> 196 + <p>Fun isa <strong>fun</strong>.</p> 198 197 199 198 </div> 200 199 </article></main> ··· 294 293 295 294 296 295 297 - <script src="https://vittoriogioda.com/js/main.min.35f435a5d8eac613c52daa28d8af544a4512337d3e95236e4a4978417b8dcb2f.js" integrity="sha256-NfQ1pdjqxhPFLaoo2K9USkUSM30&#43;lSNuSkl4QXuNyy8="></script> 296 + <script async src="http://localhost:1313/js/main.js" ></script> 298 297 299 298 300 299
+17 -21
public/sitemap.xml
··· 1 1 <?xml version="1.0" encoding="utf-8" standalone="yes"?> 2 - <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" 3 - xmlns:xhtml="http://www.w3.org/1999/xhtml"> 4 - <url> 5 - <loc>https://vittoriogioda.com/</loc> 6 - <lastmod>2026-02-26T21:52:11+01:00</lastmod> 7 - </url><url> 8 - <loc>https://vittoriogioda.com/posts/</loc> 9 - <lastmod>2026-02-26T21:52:11+01:00</lastmod> 10 - </url><url> 11 - <loc>https://vittoriogioda.com/posts/test-post/</loc> 12 - <lastmod>2026-02-26T21:52:11+01:00</lastmod> 13 - </url><url> 14 - <loc>https://vittoriogioda.com/categories/</loc> 15 - </url><url> 16 - <loc>https://vittoriogioda.com/collection/</loc> 17 - </url><url> 18 - <loc>https://vittoriogioda.com/cv/</loc> 19 - </url><url> 20 - <loc>https://vittoriogioda.com/tags/</loc> 21 - </url> 22 - </urlset> 2 + <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> 3 + 4 + <sitemap> 5 + <loc>https://vittoriogioda.com/en-us/sitemap.xml</loc> 6 + 7 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 8 + 9 + </sitemap> 10 + 11 + <sitemap> 12 + <loc>https://vittoriogioda.com/it/sitemap.xml</loc> 13 + 14 + <lastmod>2026-04-28T00:00:00+00:00</lastmod> 15 + 16 + </sitemap> 17 + 18 + </sitemapindex>
+1
public/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css
··· 1 + @font-face{font-display:swap;font-family:roboto;font-style:normal;font-weight:400;src:url(fonts/Roboto/roboto-v30-latin-regular.eot);src:url(fonts/Roboto/roboto-v30-latin-regular.eot?#iefix)format("embedded-opentype"),url(fonts/Roboto/roboto-v30-latin-regular.woff2)format("woff2"),url(fonts/Roboto/roboto-v30-latin-regular.woff)format("woff"),url(fonts/Roboto/roboto-v30-latin-regular.ttf)format("truetype"),url(fonts/Roboto/roboto-v30-latin-regular.svg#Roboto)format("svg")}*{-webkit-transition:background-color 75ms ease-in,border-color 75ms ease-in;-moz-transition:background-color 75ms ease-in,border-color 75ms ease-in;-ms-transition:background-color 75ms ease-in,border-color 75ms ease-in;-o-transition:background-color 75ms ease-in,border-color 75ms ease-in;transition:background-color 75ms ease-in,border-color 75ms ease-in}.notransition{-webkit-transition:none;-moz-transition:none;-ms-transition:none;-o-transition:none;transition:none}html{overflow-x:hidden;width:100%}body,h1,h2,h3,h4,h5,h6,p,blockquote,pre,hr,dl,dd,ol,ul,figure{margin:0;padding:0}body{min-height:100vh;overflow-x:hidden;position:relative;color:#434648;background-color:#fff;font:16px/1.85 Roboto,sans-serif;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-webkit-font-feature-settings:"kern" 1;-moz-font-feature-settings:"kern" 1;-o-font-feature-settings:"kern" 1;font-feature-settings:"kern" 1;font-kerning:normal;box-sizing:border-box}h1,h2,h3,h4,h5,h6,p,blockquote,pre,ul,ol,dl,figure{margin-top:10px;margin-bottom:10px}strong,b{font-weight:700;color:#0d122b}hr{border-bottom:0;border-style:solid;border-color:#ececec}img{max-width:100%;vertical-align:middle;-webkit-user-drag:none;margin:0 auto;text-align:center;border-radius:10px}figure{position:relative}figure>img{display:block;position:relative}figcaption{font-size:13px;text-align:center}ul li{display:list-item;text-align:-webkit-match-parent}ol li{position:relative}ul,ol{margin-top:0;margin-left:30px}li{padding-bottom:1px;padding-top:1px}li:before{color:#0d122b}li>ul,li>ol{margin-bottom:2px;margin-top:0}h1,h2,h3,h4,h5,h6{color:#0d122b;font-weight:700}h1+ul,h1+ol,h2+ul,h2+ol,h3+ul,h3+ol,h4+ul,h4+ol,h5+ul,h5+ol,h6+ul,h6+ol{margin-top:10px}@media screen and (max-width:768px){h1,h2,h3,h4,h5,h6{scroll-margin-top:65px}}h1>a,h2>a,h3>a,h4>a,h5>a,h6>a{text-decoration:none;border:none}h1>a:hover,h2>a:hover,h3>a:hover,h4>a:hover,h5>a:hover,h6>a:hover{text-decoration:none;border:none}a{color:inherit;text-decoration-color:#d2c7c7}a:hover{color:#003fff}a:focus{outline:3px solid rgba(0,54,199,.6);outline-offset:2px}del{color:inherit}em{color:inherit}blockquote{color:#525b66;opacity:.9;border-left:5px solid #c4c8cc;padding:0 0 0 1rem;margin-left:.3rem;margin-right:.3rem;font-size:1em}blockquote>:last-child{margin-bottom:0;margin-top:0}.wrapper{max-width:-webkit-calc(720px - (30px * 2));max-width:calc(720px - (30px * 2));position:relative;margin-right:auto;margin-left:auto;padding-right:30px;padding-left:30px}@media screen and (max-width:768px){.wrapper{max-width:-webkit-calc(720px - (30px));max-width:calc(720px - (30px));padding-right:20px;padding-left:20px}.wrapper.blurry{animation:.2s ease-in forwards blur;-webkit-animation:.2s ease-in forwards blur}}u{text-decoration-color:#d2c7c7}small{font-size:14px}sup{border-radius:10%;top:-3px;left:2px;font-size:small;position:relative;margin-right:2px}.overflow-table{overflow-x:auto}table{width:100%;margin-top:15px;border-collapse:collapse;font-size:14px}table thead{font-weight:700;color:#0d122b;border-bottom:1px solid #ececec}table th,table td,table tr{border:1px solid #ececec;padding:2px 7px}.navbar:after,.wrapper:after{content:"";display:table;clear:both}mark,::selection{background:#fffba0;color:#0d122b}.gist table{border:0}.gist table tr,.gist table td{border:0}.navbar{height:auto;max-width:calc(890px - (30px * 2));max-width:-webkit-calc(890px - (30px * 2));position:relative;margin-right:auto;margin-left:auto;border-bottom:1px solid #ececec;padding:.5rem .3rem}.logo{float:left;margin:.5rem 0 0 1rem}.logo>svg{opacity:.7}.logo:hover>svg{opacity:1}@media screen and (max-width:768px){.logo{padding-top:.3rem}}.menu{user-select:none;-ms-user-select:none;-webkit-user-select:none}.menu ul{margin:0}.menu .menu-separator{margin-right:.7rem}@media screen and (max-width:768px){.menu .menu-separator{display:none}}.menu a#mode{-webkit-transform:scale(1,1);transform:scale(1,1);opacity:.7;z-index:1}.menu a#mode:hover{cursor:pointer;opacity:1}.menu a#mode:active{-webkit-transform:scale(.9,.9);transform:scale(.9,.9)}.menu a#mode .mode-moon{display:block}.menu a#mode .mode-moon line{stroke:#0d122b;fill:none}.menu a#mode .mode-moon circle{fill:#0d122b;stroke:#0d122b}.menu a#mode .mode-sunny{display:none}.menu a#mode .mode-sunny line{stroke:#eaeaea;fill:none}.menu a#mode .mode-sunny circle{fill:none;stroke:#eaeaea}.menu .trigger{float:right;display:flex;align-items:center}.menu .menu-trigger{display:none}.menu .menu-icon{display:none}.menu li{display:inline-block;margin:0;padding:0;list-style:none}@media screen and (max-width:768px){.menu li{display:block;margin:0;padding:0;list-style:none}}.menu .menu-link{color:#0d122b;line-height:2.25;text-decoration:none;padding:.3rem .5rem;opacity:.7;letter-spacing:.015rem}.menu .menu-link:hover{opacity:1}.menu .menu-link:not(:last-child){margin-right:5px}@media screen and (max-width:768px){.menu .menu-link{opacity:.8}}.menu .menu-link.active{opacity:1;font-weight:600}@media screen and (max-width:768px){.menu{position:fixed;top:0;left:0;right:0;z-index:2;text-align:center;height:50px;background-color:#fff;border-bottom:1px solid #ececec}.menu a#mode{left:10px;top:12px}.menu .menu-icon{display:block;position:absolute;right:0;margin:.7rem .3rem 0 0;cursor:pointer;text-align:center;z-index:1}.menu .menu-icon>svg{opacity:.7}.menu .menu-icon:hover>svg{opacity:1}.menu .menu-icon:active{-webkit-transform:scale(.9,.9);transform:scale(.9,.9)}.menu input[type=checkbox]:not(:checked)~.trigger{clear:both;visibility:hidden}.menu input[type=checkbox]:checked~.trigger{position:fixed;animation:.2s ease-in forwards fadein;-webkit-animation:.2s ease-in forwards fadein;flex-direction:column;justify-content:center;height:100vh;width:100%;top:0}.menu .menu-link{display:block;box-sizing:border-box;font-size:1.1em}.menu .menu-link:not(:last-child){margin:0;padding:2px 0}}.author{margin-top:6.3rem;margin-bottom:7.2rem;text-align:center}@media screen and (max-width:768px){.author{margin-bottom:3em}}.author .author-avatar{width:70px;height:70px;border-radius:100%;user-select:none;-ms-user-select:none;-webkit-user-select:none;-webkit-animation:.5s ease-in forwards fadein;animation:.5s ease-in forwards fadein;opacity:1;object-fit:cover}.author .author-name{font-size:1.7em;margin-bottom:2px}.author .author-bio{margin:0 auto;opacity:.9;max-width:393px;line-height:1.688}.posts-item-note{padding-bottom:.3rem;font-weight:500;color:#0d122b}.post-item{display:flex;padding-top:5px;padding-bottom:6px;justify-content:space-between;flex-direction:row;align-items:center}.post-item:not(:first-child){border-top:1px solid #ececec}.post-item .post-item-date{min-width:96px;color:#0d122b}@media screen and (max-width:768px){.post-item .post-item-date{font-size:16px}}.post-item .post-item-title{margin:0;border:0;padding:0;font-size:16px;font-weight:400;letter-spacing:.1px}@media screen and (max-width:768px){.post-item .post-item-title{max-width:15rem}}.post-item .post-item-title a{color:#434648;transition:all 150ms ease-in 0s}.post-item .post-item-title a:hover,.post-item .post-item-title afocus{color:#0d122b}.footer{margin-top:8em;margin-bottom:2em;text-align:center}@media screen and (max-width:768px){.footer{margin-top:3em}}.footer span.footer_item{opacity:.8;font-weight:700;font-size:14px}.footer a.footer_item{opacity:.8;text-decoration:none}.footer a.footer_item:not(:last-child){margin-right:10px}.footer a.footer_item:not(:last-child):hover{opacity:1}.footer_copyright{font-size:13px;display:block;color:#6b7886;opacity:.8;margin-top:.7rem;padding:.3rem .95rem}.footer_social-icons a{text-decoration:none;margin-right:.31rem}.footer_social-icons svg{color:#888a90;height:24px;width:24px}.footer_social-icons svg:hover{color:#ddd}.not-found{text-align:center;display:flex;justify-content:center;flex-direction:column;height:75vh}.not-found .title{font-size:5em;font-weight:700;line-height:1.1;color:#0d122b;text-shadow:1px 0 0 #003fff}.not-found .phrase{color:#434648}.not-found .solution{color:#003fff;letter-spacing:.5px}.not-found .solution:hover{color:#0036c7}.search-article{position:relative;margin-bottom:50px}.search-article label[for=search-input]{position:relative;top:10px;left:11px}.search-article input[type=search]{top:0;left:0;border:0;width:100%;height:40px;outline:none;position:absolute;border-radius:5px;padding:10px 10px 10px 35px;color:#434648;-webkit-appearance:none;font-size:16px;background-color:rgba(128,128,128,.1);border:1px solid rgba(128,128,128,.1)}.search-article input[type=search]::-webkit-input-placeholder{color:gray}.search-article input[type=search]::-webkit-search-decoration,.search-article input[type=search]::-webkit-search-results-decoration{display:none}#search-results{text-align:center}#search-results li{text-align:left}.archive-tags{height:auto}.archive-tags .tag-item{padding:1px 3px;border-radius:2px;border:1px solid rgba(128,128,128,.1);background-color:rgba(128,128,128,.1)}sub,sup{font-size:79%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}kbd{font-size:85%;border-radius:3px;color:#333638;background:#d8dbe2;display:inline-block;font-family:Consolas,monaco,monospace;line-height:1;padding:2px 4px;white-space:nowrap}mark{background:#ff0;color:#000;border-radius:3px}@media screen and (max-width:768px){.wrapper.post{padding-left:15px;padding-right:15px}}.header{margin-top:7.8em}.header .header-title{font-size:2em;line-height:1.2;margin-top:10px;margin-bottom:20px}@media screen and (max-width:768px){.header .header-title{font-size:1.9em}}.center{text-align:center}.post-meta{padding-top:3px;line-height:1.3;color:#6b7886}.post-meta time{position:relative;margin-right:1.5em}.post-meta span[itemprop=author]{border-bottom:1px dotted #ececec}.page-content{padding-top:8px}.page-content iframe{text-align:center}.page-content figure img{border-radius:2px}.page-content figure figcaption{margin-top:5px;font-style:italic;font-size:14px}.page-content a{color:#003fff;text-decoration:none}.page-content a[target=_blank]::after{content:" \2197";font-size:14px;line-height:0;position:relative;bottom:5px;vertical-align:baseline}.page-content a:hover{color:#0036c7}.page-content a:focus{color:#003fff}.page-content>p{margin:0;padding-top:15px;padding-bottom:15px}.page-content ul.task-list{list-style:none;margin:0}.page-content ul.task-list li::before{content:""}.page-content ul.task-list li input[type=checkbox]{margin-right:10px}.page-content dl dt{font-weight:700}.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6{color:#0d122b;font-weight:700;margin-top:30px;margin-bottom:0;letter-spacing:.03rem}.page-content h1:hover .anchor-head,.page-content h2:hover .anchor-head,.page-content h3:hover .anchor-head,.page-content h4:hover .anchor-head,.page-content h5:hover .anchor-head,.page-content h6:hover .anchor-head{color:#003fff;opacity:1}.page-content h1 .anchor-head,.page-content h2 .anchor-head,.page-content h3 .anchor-head,.page-content h4 .anchor-head,.page-content h5 .anchor-head,.page-content h6 .anchor-head{position:relative;opacity:0;outline:none}.page-content h1 .anchor-head::before,.page-content h2 .anchor-head::before,.page-content h3 .anchor-head::before,.page-content h4 .anchor-head::before,.page-content h5 .anchor-head::before,.page-content h6 .anchor-head::before{content:"#";position:absolute;right:-3px;width:1em;font-weight:700}.page-content h1{font-size:24px}.page-content h2{font-size:22px}.page-content h3{font-size:20px}.page-content h4{font-size:20px}.page-content h5{font-size:16px}.page-content h6{font-size:14px}.post-nav{display:flex;position:relative;margin-top:5em;border-top:1px solid #ececec;line-height:1.4}.post-nav .post-nav-item{border-bottom:0;font-weight:700;padding-bottom:10px;width:50%;padding-top:10px;text-decoration:none;box-sizing:border-box}.post-nav .post-nav-item .post-title{color:#0d122b}.post-nav .post-nav-item:hover .post-title,.post-nav .post-nav-item:focus .post-title{color:#0036c7;opacity:.9}.post-nav .post-nav-item .nav-arrow{font-weight:400;font-size:14px;color:#6b7886;margin-bottom:3px}.post-nav .post-nav-item:nth-child(odd){padding-left:0;padding-right:20px}.post-nav .post-nav-item:nth-child(even){text-align:right;padding-right:0;padding-left:20px}@media screen and (max-width:768px){.post-nav{display:block;font-size:14px}.post-nav .post-nav-item{display:block;width:100%}.post-nav .post-nav-item:nth-child(even){border-left:0;padding-left:0;border-top:1px solid #ececec}}.post-updated-at{font-family:ubuntu mono,monospace}code{font-family:Consolas,monospace;text-rendering:optimizeLegibility;font-feature-settings:"calt" 1;font-variant-ligatures:normal;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;font-size:inherit}li>code,p>code{white-space:pre-wrap;font-size:.9em;padding:1px 3px;position:relative;top:-1px;color:#333638;background-color:#d8dbe2;border-radius:2px;border:1px solid rgba(128,128,128,.1)}pre{background-color:#1a1b21;border-radius:.3rem;padding:.5rem 1rem;display:block;overflow-x:auto}@media screen and (max-width:768px){pre{margin:0 calc(51% - 51vw)}}pre::-webkit-scrollbar{height:.5rem}pre::-webkit-scrollbar-track{background:#606071;border-radius:.1rem}pre::-webkit-scrollbar-thumb{background:#999ea2;border-radius:.3rem}pre::-webkit-scrollbar-thumb:hover{background:#424546}pre>code{color:#fff;max-width:50rem;margin-left:auto;margin-right:auto;line-height:1.5;display:block;border:0}.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight,.highlight .w{color:#fbf1c7}.highlight .err{color:#fb4934;font-weight:700}.highlight .c,.highlight .cd,.highlight .cm,.highlight .c1,.highlight .cs{color:#928374;font-style:italic}.highlight .cp{color:#8ec07c}.highlight .nt{color:#fb4934}.highlight .o,.highlight .ow{color:#fbf1c7}.highlight .p,.highlight .pi{color:#fbf1c7}.highlight .gi{color:#b8bb26;background-color:#282828}.highlight .gd{color:#fb4934;background-color:#282828}.highlight .gh{color:#b8bb26;font-weight:700}.highlight .k,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kv{color:#fb4934}.highlight .kc{color:#d3869b}.highlight .kt{color:#fabd2f}.highlight .kd{color:#fe8019}.highlight .s,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .s2,.highlight .sh,.highlight .sx,.highlight .s1{color:#b8bb26;font-style:italic}.highlight .si{color:#b8bb26;font-style:italic}.highlight .sr{color:#b8bb26;font-style:italic}.highlight .se{color:#fe8019}.highlight .nn{color:#8ec07c}.highlight .nc{color:#8ec07c}.highlight .no{color:#d3869b}.highlight .na{color:#b8bb26}.highlight .m,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .il,.highlight .mo,.highlight .mb,.highlight .mx{color:#d3869b}.highlight .ss{color:#83a598}details{cursor:pointer}.toc{margin:1.1rem 0 1rem;padding:.5rem 1rem;border-radius:.3rem;background-color:#edecec}.toc ul{padding-top:1rem;margin-left:1rem;padding-left:1rem}.toc ul li{margin-bottom:.5em;line-height:1.4}@keyframes fadein{0%{opacity:.2}100%{opacity:1}}@keyframes blur{0%{filter:blur(0)}100%{filter:blur(4px)}}.embed-responsive{height:0;max-width:100%;overflow:hidden;position:relative;padding-bottom:56.25%;margin-top:20px}.embed-responsive iframe,.embed-responsive object,.embed-responsive embed{top:0;left:0;width:100%;height:100%;position:absolute}.main-404{padding:9rem 0;text-align:center}@media(prefers-color-scheme:dark){html:not(.light) body{color:#babdc4;background-color:#131418}html:not(.light) h1,html:not(.light) h2,html:not(.light) h3,html:not(.light) h4,html:not(.light) h5,html:not(.light) h6{color:#eaeaea}html:not(.light) table thead{color:#eaeaea;border-color:#1b1d25}html:not(.light) table th,html:not(.light) table td,html:not(.light) table tr{border-color:#1b1d25}html:not(.light) .page-content a{color:#77a8fd}html:not(.light) .page-content a:hover,html:not(.light) .page-content a:active,html:not(.light) .page-content a:focus{color:#5292ff}html:not(.light) .page-content h3{border-color:#1b1d25}html:not(.light) .page-content h1 .anchor-head,html:not(.light) .page-content h2 .anchor-head,html:not(.light) .page-content h3 .anchor-head,html:not(.light) .page-content h4 .anchor-head,html:not(.light) .page-content h5 .anchor-head,html:not(.light) .page-content h6 .anchor-head{color:#77a8fd}html:not(.light) .toc{background-color:#323232}html:not(.light) #totop{color:#babdc4;background-color:#676767b3}html:not(.light) #totop:hover{background-color:#676767}html:not(.light) li>code,html:not(.light) p>code{font-size:.9em;padding:1px 3px;position:relative;top:-1px;color:#c2c4ca;background-color:#2d2d2d;border-radius:2px;border:1px solid rgba(128,128,128,.1)}html:not(.light) kbd{color:#c2c4ca;background-color:#2d2d2d}html:not(.light) hr{border-color:#1b1d25}html:not(.light) .post-meta{color:#767f87}html:not(.light) .post-meta time::after{background-color:#1b1d25}html:not(.light) .post-meta span[itemprop=author]{border-color:#1b1d25}html:not(.light) a{color:inherit;text-decoration-color:#4a4d56}html:not(.light) a:hover{color:#77a8fd}html:not(.light) a:focus{outline-color:rgba(44,118,246,.6)}html:not(.light) li:before{color:#eaeaea}html:not(.light) blockquote{color:#9b9ba3;border-color:#4a4d56}html:not(.light) strong,html:not(.light) b{color:#eaeaea}html:not(.light) .navbar{border-color:#1b1d25}html:not(.light) .navbar .menu a#mode .mode-sunny{display:block}html:not(.light) .navbar .menu a#mode .mode-moon{display:none}html:not(.light) .navbar .menu .menu-link{color:#eaeaea}}@media screen and (prefers-color-scheme:dark) and (max-width:768px){html:not(.light) .navbar .menu{background-color:#131418;border-color:#1b1d25}html:not(.light) .navbar .menu input[type=checkbox]:checked~.trigger{background:#131418}}@media(prefers-color-scheme:dark){html:not(.light) .post-item:not(:first-child){border-color:#1b1d25}html:not(.light) .post-item .post-item-date{color:#eaeaea}html:not(.light) .post-item .post-item-title a{color:#babdc4}html:not(.light) .post-item .post-item-title a:hover,html:not(.light) .post-item .post-item-title afocus{color:#eaeaea}html:not(.light) .post-nav{border-color:#1b1d25}html:not(.light) .post-nav .post-nav-item{font-weight:700}html:not(.light) .post-nav .post-nav-item .post-title{color:#eaeaea;opacity:.9}html:not(.light) .post-nav .post-nav-item:hover .post-title,html:not(.light) .post-nav .post-nav-item:focus .post-title{color:#5292ff}html:not(.light) .post-nav .post-nav-item .nav-arrow{color:#767f87}}@media screen and (prefers-color-scheme:dark) and (max-width:768px){html:not(.light) .post-nav .post-nav-item:nth-child(even){border-color:#1b1d25}}@media(prefers-color-scheme:dark){html:not(.light) .footer span.footer_item{color:#eaeaea}html:not(.light) .footer a.footer_item:not(:last-child){color:#eaeaea}html:not(.light) .footer .footer_copyright{color:#767f87;opacity:1}html:not(.light) .not-found .title{color:#eaeaea;text-shadow:1px 0 0 #77a8fd}html:not(.light) .not-found .phrase{color:#babdc4}html:not(.light) .not-found .solution{color:#77a8fd}html:not(.light) .not-found .solution:hover{color:#5292ff}html:not(.light) .search-article input[type=search]{color:#babdc4}html:not(.light) .search-article input[type=search]::-webkit-input-placeholder{color:rgba(128,128,128,.8)}}html.dark body{color:#babdc4;background-color:#131418}html.dark h1,html.dark h2,html.dark h3,html.dark h4,html.dark h5,html.dark h6{color:#eaeaea}html.dark table thead{color:#eaeaea;border-color:#1b1d25}html.dark table th,html.dark table td,html.dark table tr{border-color:#1b1d25}html.dark .page-content a{color:#77a8fd}html.dark .page-content a:hover,html.dark .page-content a:active,html.dark .page-content a:focus{color:#5292ff}html.dark .page-content h3{border-color:#1b1d25}html.dark .page-content h1 .anchor-head,html.dark .page-content h2 .anchor-head,html.dark .page-content h3 .anchor-head,html.dark .page-content h4 .anchor-head,html.dark .page-content h5 .anchor-head,html.dark .page-content h6 .anchor-head{color:#77a8fd}html.dark .toc{background-color:#323232}html.dark #totop{color:#babdc4;background-color:#676767b3}html.dark #totop:hover{background-color:#676767}html.dark li>code,html.dark p>code{font-size:.9em;padding:1px 3px;position:relative;top:-1px;color:#c2c4ca;background-color:#2d2d2d;border-radius:2px;border:1px solid rgba(128,128,128,.1)}html.dark kbd{color:#c2c4ca;background-color:#2d2d2d}html.dark hr{border-color:#1b1d25}html.dark .post-meta{color:#767f87}html.dark .post-meta time::after{background-color:#1b1d25}html.dark .post-meta span[itemprop=author]{border-color:#1b1d25}html.dark a{color:inherit;text-decoration-color:#4a4d56}html.dark a:hover{color:#77a8fd}html.dark a:focus{outline-color:rgba(44,118,246,.6)}html.dark li:before{color:#eaeaea}html.dark blockquote{color:#9b9ba3;border-color:#4a4d56}html.dark strong,html.dark b{color:#eaeaea}html.dark .navbar{border-color:#1b1d25}html.dark .navbar .menu a#mode .mode-sunny{display:block}html.dark .navbar .menu a#mode .mode-moon{display:none}html.dark .navbar .menu .menu-link{color:#eaeaea}@media screen and (max-width:768px){html.dark .navbar .menu{background-color:#131418;border-color:#1b1d25}html.dark .navbar .menu input[type=checkbox]:checked~.trigger{background:#131418}}html.dark .post-item:not(:first-child){border-color:#1b1d25}html.dark .post-item .post-item-date{color:#eaeaea}html.dark .post-item .post-item-title a{color:#babdc4}html.dark .post-item .post-item-title a:hover,html.dark .post-item .post-item-title afocus{color:#eaeaea}html.dark .post-nav{border-color:#1b1d25}html.dark .post-nav .post-nav-item{font-weight:700}html.dark .post-nav .post-nav-item .post-title{color:#eaeaea;opacity:.9}html.dark .post-nav .post-nav-item:hover .post-title,html.dark .post-nav .post-nav-item:focus .post-title{color:#5292ff}html.dark .post-nav .post-nav-item .nav-arrow{color:#767f87}@media screen and (max-width:768px){html.dark .post-nav .post-nav-item:nth-child(even){border-color:#1b1d25}}html.dark .footer span.footer_item{color:#eaeaea}html.dark .footer a.footer_item:not(:last-child){color:#eaeaea}html.dark .footer .footer_copyright{color:#767f87;opacity:1}html.dark .not-found .title{color:#eaeaea;text-shadow:1px 0 0 #77a8fd}html.dark .not-found .phrase{color:#babdc4}html.dark .not-found .solution{color:#77a8fd}html.dark .not-found .solution:hover{color:#5292ff}html.dark .search-article input[type=search]{color:#babdc4}html.dark .search-article input[type=search]::-webkit-input-placeholder{color:rgba(128,128,128,.8)}.list-page .post-year{padding-bottom:.5rem}.icon-star{color:orange;height:16px;margin-right:1rem;width:16px;display:block}.post-item-right{margin-left:auto;margin-right:0}html{scroll-behavior:smooth}#totop{visibility:hidden;color:#434648;position:fixed;bottom:60px;right:30px;z-index:1;border-radius:10%;background-color:#dfe0e397;transition:visibility .5s,opacity .8s linear}#totop:hover{background-color:#dfe0e3}#totop svg{margin:auto;display:block;height:40px;width:40px}
+7 -6
public/tags/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en" /> 19 + <meta name="language" content="en" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/tags/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/tags/" title="English" /> 22 + 23 + <link rel="alternate" hreflang="it" href="https://vittoriogioda.com/it/tags/" title="Italiano" /> 22 24 23 25 24 26 ··· 45 47 <link rel="canonical" href="https://vittoriogioda.com/tags/"> 46 48 <link href="/tags/index.xml" rel="alternate" type="application/rss+xml" title="Vittorio Gioda"> 47 49 <link href="/tags/index.xml" rel="feed" type="application/rss+xml" title="Vittorio Gioda"> 48 - <link href="/style.min.35b6534987e8960a1694fa69ba4f66aea014b26acc060337899cb460fe402efe.css" rel="stylesheet"> 50 + <link href="/style.min.77c2fe8c6bdd79edf8aa9f22e68680c60c293f0cee7f19200b3488b1fa77e553.css" rel="stylesheet"> 49 51 <link href="/code-highlight.min.706d31975fec544a864cb7f0d847a73ea55ca1df91bf495fd12a177138d807cf.css" rel="stylesheet"> 50 52 51 53 ··· 121 123 <li class="menu-separator"> 122 124 <span>|</span> 123 125 </li> 124 - 125 126 126 127 </ul> 127 128 <a id="mode" href="#">
+1 -1
public/tags/index.xml
··· 5 5 <link>https://vittoriogioda.com/tags/</link> 6 6 <description>Recent content in Tags on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="https://vittoriogioda.com/tags/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en</language><atom:link href="https://vittoriogioda.com/tags/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+4 -4
tags/index.html
··· 1 1 <!DOCTYPE html> 2 - <html lang="en-gb"><head><meta charset="utf-8"> 2 + <html lang="en-us"><head><meta charset="utf-8"> 3 3 <meta http-equiv="content-type" content="text/html"> 4 4 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 5 5 ··· 15 15 <meta property="og:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 16 16 <meta name="twitter:description" content="Coding most of the time. Flâneur as a life style. Software developer for work. Software developer for passion. From Italy" /> 17 17 18 - <meta property="og:locale" content="en-gb" /> 19 - <meta name="language" content="en-gb" /> 18 + <meta property="og:locale" content="en-us" /> 19 + <meta name="language" content="en-us" /> 20 20 21 - <link rel="alternate" hreflang="en-gb" href="https://vittoriogioda.com/tags/" title="English" /> 21 + <link rel="alternate" hreflang="en-us" href="https://vittoriogioda.com/tags/" title="English" /> 22 22 23 23 24 24
+1 -1
tags/index.xml
··· 5 5 <link>https://vittoriogioda.com/tags/</link> 6 6 <description>Recent content in Tags on Vittorio Gioda</description> 7 7 <generator>Hugo -- gohugo.io</generator> 8 - <language>en-gb</language><atom:link href="https://vittoriogioda.com/tags/index.xml" rel="self" type="application/rss+xml" /> 8 + <language>en-us</language><atom:link href="https://vittoriogioda.com/tags/index.xml" rel="self" type="application/rss+xml" /> 9 9 </channel> 10 10 </rss>
+1
themes/hugo-blog-awesome/assets/sass/_base.scss
··· 98 98 -webkit-user-drag: none; 99 99 margin: 0 auto; 100 100 text-align: center; 101 + border-radius: 10px; 101 102 } 102 103 103 104 // Figure
+10 -10
themes/hugo-blog-awesome/exampleSite/hugo.toml
··· 5 5 languageCode = 'en-us' 6 6 7 7 # This defines how dates are formatted 8 - defaultContentLanguage = "en-gb" 8 + defaultContentLanguage = "en-us" 9 9 10 10 # Enable emojis globally 11 11 enableEmoji = true ··· 48 48 ordered = false # generates <ul> instead of <ol> 49 49 50 50 ############################## English language ################################ 51 - [Languages.en-gb] 51 + [Languages.en-us] 52 52 languageName = "English" 53 - languageCode = "en-gb" 53 + languageCode = "en-us" 54 54 contentDir = "content/en" 55 55 weight = 1 56 56 57 - [Languages.en-gb.menu] 58 - [[Languages.en-gb.menu.main]] 57 + [Languages.en-us.menu] 58 + [[Languages.en-us.menu.main]] 59 59 # The page reference (pageRef) is useful for menu highlighting 60 60 # When pageRef is set, setting `url` is optional; it will be used as a fallback if the page is not found. 61 61 pageRef="/" 62 62 name = 'Home' 63 63 url = '/' 64 64 weight = 10 65 - [[Languages.en-gb.menu.main]] 65 + [[Languages.en-us.menu.main]] 66 66 pageRef="posts" 67 67 name = 'Posts' 68 68 url = '/posts/' 69 69 weight = 20 70 - [[Languages.en-gb.menu.main]] 70 + [[Languages.en-us.menu.main]] 71 71 pageRef="about" 72 72 name = 'About' 73 73 url = '/about/' 74 74 weight = 30 75 75 76 - [Languages.en-gb.params] 76 + [Languages.en-us.params] 77 77 sitename = "Awesome hugo blog" 78 78 defaultColor = "dark" # set color mode: dark, light, auto 79 79 # Setting it to 'auto' applies the color scheme based on the visitor's device color preference.If you don't specify anything, ignore this parameter, or leave it blank, ··· 96 96 # full - includes full blog post in the RSS feed. Generated using Hugo .Content . 97 97 # By default (or if nothing is specified), summary is used. 98 98 99 - [Languages.en-gb.params.author] 99 + [Languages.en-us.params.author] 100 100 avatar = "avatar.jpg" # put the file in assets folder; also ensure that image has same height and width 101 101 # Note: image is not rendered if the resource(avatar image) is not found. No error is displayed. 102 102 intro = "Awesome hugo blog" ··· 104 104 description = "A fast, minimalistic Hugo theme with light and dark mode support, for running a personal site or blog." 105 105 106 106 # Allow to override webmanifest options 107 - [Languages.en-gb.params.webmanifest] 107 + [Languages.en-us.params.webmanifest] 108 108 name = "sitename" # will use "params.sitename" or "title" by default 109 109 short_name = "sitename" # same as name 110 110 start_url = "/" # will use homepage url by default