Com instal·lar Nextcloud+MariaDB+Swag amb Docker passa a passa

En aquesta entrada us mostraré com fer una instal·lació de Nextcloud amb la base de dades MariaDB tot darrere un proxy invers, protegit amb Let’s encrypt i usant la tecnologia de contenidors Docker.

Bàsicament, aquest post és per compartir el que m’he trobat i bàsicament és una documentació.

Per fer aquesta instal·lació, anem a fer una llista del que necessitem:

  • Servidor gnu/linux amb accés root o un usuari amb permisos d’administrador.
  • Docker.

Passes a seguir:

Instal·lació de Docker

Si ja tens docker instal·lat al servidor, simplement pots passar al següent punt.

En primer lloc, assegurar-nos que tenim el docker instal·lat. En cas que no ho tinguem, podem seguir les pautes que trobareu a https://docs.docker.com/engine/install/#server La forma més senzilla d’instal·lació és usar el següent script:

Escollim el que volem instal·lar, ens decantarem per LinuxServer.io

Per facilitar la instal·lació del sistema, usarem les imatges de LinuxServer.io, podem trobar-les a fleet.linuxserver.io Nosaltres instal·larem nextcloud, mariadb i swag tot junt mitjançant docker compose. A continuació teniu el docker-compose.yaml que vaig crear per aixecar els contenidors:

Explicarem un poc el que fa aquest fitxer.

Es creen tres serveis, Nextcloud el que ens interessa, MariaDB el motor de base de dades que usarem per persistir les dades dels usuaris (no els fitxers) i Swag el qual ens servirà de proxy invers i a més gestionarà els certificats SSL de Let’s Encrypt. Per saber com funciona de forma més estesa, podeu visitar el web de docs.LinuxServer.io on ho expliquen. També teniu una explicació molt sòlida del perquè crear volums per persistir les dades a disc, ho teniu a https://docs.linuxserver.io/general/volumes/

Aixequem els serveis

A partir d’aquí, una vegada tenim el fitxer, simplement hem de teclejar el següent

En pocs segons tindreu el sistema funcionant.

A partir d’aquí pots accedir al domini que tenguis configurat al paràmetre URL del servei swag, i si tot ha anat bé, veuràs la pàgina de configuració del Nextcloud.

Una vegada configurat, reinicia el contenidor de Nextcloud i ja tindràs el sistema configurat.

Per veure els logs dels contenidors per detectar problemes o errades, has de teclejar

Per revisar els logs dels programes, pots accedir a /opt/appdata, ja que hem creat els volums i els hem persistit dins /opt/appdata

En principi ja ho tenim, és senzill, tindràs un sistema madur i les teves dades seran teves.

Fonts

Explorant el Món del Sistema Operatiu GNU Guix

Avui dia hi ha una gran quantitat de sistemes operatius de codi obert i el GNU/Guix sorgeix com una molt bona opció per aquelles persones que busquen control, transparència i llibertat en el seu entorn informàtic. El projecte ha estat ideat i desenvolupat pel GNU i la FSF.

Què És el GNU/Guix?

El GNU/Guix és una distribució de sistema operatiu que destaca per la seva gestió avançada de paquets i la seva filosofia d’usar exclusivament programari lliure. Una de les característiques més distintives és el sistema de gestió de paquets funcional, que permet als usuaris tenir múltiples versions de les mateixes llibreries i aplicacions instal·lades de forma simultània, garantint la coherència i la reproductibilitat de l’entorn del sistema.

Principals Característiques:

  1. Sistema de Gestió de Paquets Funcional: La característica principal que diferencia el GNU/Guix és el seu sistema de gestió de paquets funcional, que ofereix un control granular sobre les dependències del sistema i permet als usuaris gestionar entorns d’aplicacions amb facilitat.
  2. 100% Programari Lliure: Una estricta adhesió als principis del programari lliure, garantint que tots els components del sistema siguin lliures i oberts.
  3. Reproductibilitat: La capacitat de reproduir exactament un entorn de sistema en diferents màquines, assegurant una consistència i coherència en tots els entorns d’ús.
  4. Col·laboració amb el Projecte GNU: El GNU/Guix és fruit de la col·laboració entre el projecte GNU i la Free Software Foundation, assegurant una base sòlida en els principis del programari lliure.

Com començar amb GNU/Guix:

Per als que vulguin explorar el GNU/Guix, el procés d’instal·lació és un bon punt de partida. El suport per a diferents arquitectures i la documentació completa faciliten el desplegament d’aquest sistema operatiu fascinant.

En el cas que no es disposi d’un ordinador per instal·lar el sistema, una bona opció és instal·lar-ho com una màquina virtual. A la secció de descàrregues de GNU/Guix té diverses opcions que podem triar.

Tenc preparat una entrada on us mostraré com instal·lar-ho a un VirtualBox a partir de la imatge de QEMU.


Diferents tipus d’accés xarxes

Avui dia, la seguretat digital és més necessària que mai. La gran majoria de persones tenim una vida hiper connectada i estam a més d’una xarxa social, usam molts de serveis en el núvol i per tant necessitam un accés per a cada un dels sistemes que usam.

En un món perfecte, per a cada servei hauríem de tenir una contrasenya única i robusta (alguna cosa que sabem). Dic en un món perfecte per que segur que no és així.

Anem a veure quins son els mètodes d’autenticació que existeixen i com podem millorar la seguretat.

Alguna cosa que sabem

En aquest cas és el més conegut per a tothom, és la contrasenya o el codi PIN.

Com poder fer que siguin més segurs?

  • No crear contrasenyes febles: Amb això vull dir que haurien de ser complexes i afegir caràcters no alfabètics, com a signes de puntuació i mesclar números i lletres, majúscules i minúscules.
  • Canviar-les freqüentment: No tenir la mateixa contrasenya tota la vida.
  • No compartir-la amb ningú: i per suposat MAI de la vida envieu una contrasenya per correu. PER FAVOR!

En definitiva, tractar la contrasenya com la roba interior que no la mostres i la canvies amb certa freqüència.

Collons això de tenir una contrasenya robusta és difícil! no la recordaré!

Tu, ara mateix

Pot ser una resposta, però els navegadors us poden ajudar.

Els més moderns tenen un sistema que et permeten generar i desar la contrasenya de forma fàcil i còmode. A més, com que pots tenir sincronitzades les teves preferències, tens les mateixes contrasenyes a tots els teus dispositius.

Si vols anar més enllà, pots usar un gestor de contrasenyes com és el Keepass que ho teniu per la majoria de les plataformes.

Alguna cosa que tenim

En aquest grup hi caben les targetes de coordenades o generadors de claus.

Les targetes de coordenades son utilitzades típicament a banca. Tens una targeta amb una graella amb números i quan fas una transacció et diu que posis el que ocupa la casella x i d’aquesta forma pot validar que l’ha sol·licitada el propietari.

Els generadors de claus son uns sistemes, que poden ser una aplicació o un element físic (una clau), que cada cert temps genera codis aleatoris i quan accedim a un sistema ens sol·licita aquesta clau. És important saber que el sistema ha d’estar vinculat amb el generador de claus, ja que si no es fa impossible el seu us.

Alguna cosa que som

Control biomètric, ja sigui les ditades (empremtes digitals), escaneig de còrnia, reconeixement facial, …

Aquest, darrerament està a l’ordre del dia. La gran majoria dels telèfons actuals duen aquests sistemes per desbloquejar el terminal i ser usat. Pràcticament ja ho fem sense pensar-ho.

Com podem millorar la seguretat

Com hem dit al principi, majoritàriament s’usa l’usuari i contrasenya (Alguna cosa que sabem), però combinant amb un altre dels factors, podem millorar la seguretat.

La majoria de les xarxes socials ja ens faciliten el doble factor d’autenticació (2fa) això simplement és combinar el teu usuari i contrasenya amb un altre com podria ser la generació de claus.

Començaré una serie d’entrades on explicaré com activar aquest mètode a les diferents xarxes socials i així millorar la seguretat.

  • Com activar el doble factor d’autenticació a Instagram
  • Com activar el doble factor d’autenticació a Facebook
  • Com activar el doble factor d’autenticació a Google
  • Unificar la generació de claus en una mateixa app usant Latch

Com arreglar l’errada YumRepo Error All mirror urls are not using ftp https or file

De ben segur que molts dels que administrau servidors amb CentOS voleu saber com arreglar l’errada YumRepo Error All mirror urls are not using ftp https or file quan heu realitzat un update recentment.

L’altre dia revisant el servidor d’un amic, me va comentar que el plesk li generava una serie d’errades, que no aconseguia actualitzar el sistema correctament.

Vaig accedir a la màquina mitjançant ssh i procedeixo a realitzar un update manualment:

root@servidor01:~$ yum -y update

A lo que el sistema respon:

"YumRepo Error: All mirror URLs are not using ftp, http[s] or file."
 Eg. Invalid release/repo/arch combination/ removing mirrorlist with no valid mirrors: /var/cache/yum/x86_64/6/base/mirrorlist txt
"Error: Cannot find a valid baseurl for repo: base" 

Donc pel que sembla el CentOS 6 ha arribat al EOL i han passat els repositoris a vault. Per tant per arreglar-ho hem de canviar les url dels repositoris. Ara us mostraré com fer-ho.

En primer lloc, procediu a realitzar una còpia de seguretat del CentOS-Base.repo

root@servidor01:~$ cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo-bak

Ara modificarem el fitxer CentOS-Base.repo de la següent forma:

[base] name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=http://vault.centos.org/6.10/os/$basearch/
gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#released updates
[updates] name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
baseurl=http://vault.centos.org/6.10/updates/$basearch/
gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#additional packages that may be useful
[extras] name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
baseurl=http://vault.centos.org/6.10/extras/$basearch/
gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#additional packages that extend functionality of existing packages
[centosplus] name=CentOS-$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
baseurl=http://vault.centos.org/6.10/centosplus/$basearch/
gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib&infra=$infra baseurl=http://vault.centos.org/6.10/contrib/$basearch gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

Una vegada hem desat, tornam a provar de fer un update.

root@servidor01:~$ yum -y update

Si tot ha anat bé, actualitzarà el sistema.

En cas de detectar alguna errada, prova de realitzar un update amb skip-broken

root@servidor01:~$ yum update --skip-broken

Espero sigui d’ajuda.

Via: How to fix YumRepo Error All mirror urls are not using ftp https or file cent YumRepo | Tech IT Admin

Com carregar nouveau a Ubuntu 20.04 usant la terminal

Aquesta entrada me servirà per, a futur, recordar com es carrega el mòdul nouveau usant la terminal a Ubuntu 20.04 i eliminar el mòdul propietari d’Nvidia.

En el meu ordinador d’escriptori tenc instal·lat una Ubuntu 20.04 LTS. La targeta de vídeo és una GeForce 8500 GT, vaja que és antiga. Fins aquí tot bé, però la darrera actualització del sistema me va instal·lar el kernel 5.8 i també problemes amb el mòdul propietari d’Nvidia nvidia-340. Una vegada instal·lat, Kernel panic!

Vaig reiniciar l’ordinador en mode recuperació i vaig accedir a la terminal en mode root. Actualitz el sistema, vaig provar sort reiniciant, … nope. Fent un lshw -c display me diu que no hi ha cap mòdul que s’encarregui del vídeo “Device not managed”.

Després de cercar un poc per la xarxa, decideixo eliminar el mòdul propietari i carregar el lliure nouveau, però clar tot des de la terminal.

Pas a descriure com fer-ho.

Com desinstal·lar el mòdul propietari d’Nvidia

Es mostraran les passes a seguir per a la desinstal·lació del mòdul propietari d’Nvidia i la instal·lació del mòdul lliure nouveau.

  1. Executam el següent comandament per a confirmar que tenim els mòduls propietaris instal·lats sudo dpkg -l | grep -i Nvidia
  2. A continuació realitzarem una purga de la instal·lació d’aquests mòduls sudo apt remove --purge '^nvidia-*' això esborrarà tot paquet que contengui la paraula nvidia i les configuracions relacionades.
  3. Reinstal·larem el metapaquet ubuntu-desktop amb el seguent comandament sudo apt install --reinstall ubuntu-desktop
  4. Ara li direm al sistema que carregui el mòdul nouveau, teclejant echo 'nouveau' | sudo tee -a /etc/modules Lo que fa aquest comandament es afegir la paraula nouveau al fitxer modules que està dins del directori etc.
  5. Amb aquestes passes ja ho tenim, sols cal reiniciar sudo reboot.

Una vegada el sistema ha reiniciat, ha d’haver carregat l’entorn gràfic correctament, només hauries de corregir els paràmetres de resolució i, en cas de tenir varis, la disposició de monitors.

Aquest article es basa en un de Linoxide anomenat How to install Nvidia Driver on Ubuntu 20.04

RadarCOVID al Xiaomi no funciona correctament

Me vaig descarregar el RadarCOVID al meu mòbil Xiaomi MI 9SE i una vegada executat me sortia una notificació que resava:

No funciona correctamente. Ahorro de energia activado. Debes desactivarlo para que RadarCOVID funcione correctamente.

Notificació del RadarCOVID

Després de demanar-ho per facebook a veure si a algú li passava el mateix, un company me va saber dir com solucionar-ho.

Ho descriuré amb les opcions de menú en anglès, ja que tenc configurat el telèfon en aquest idioma. Anem a seguir les següents passes:

Accedim a Settings / apps / Manage apps, aquí cercam l’aplicació Radar COVID i la seleccionam, ens mostrarà vàries opcions. S’ha de modificar l’opció “Battery saver” a “No restrictions”

Xarxes socials lliures federades

Originalment, internet havia de ser una xarxa descentralitzada a fi de mantenir la seva independència.

Amb l’aparició de les grans empreses d’Internet, aquesta descentralització s’ha vist, bastant, retallada.

Les actuals grans empreses d’internet, GAFAM (Google, Amazon, Facebook, Apple, Microsoft) s’han fet els seus bastions on estan aglapint la majoria del transit d’internet, vaja que es reparteixen el pastís.

Silos socials

En respecte a les xarxes socials, el principal actor en aquest cas, és Facebook, el qual és la principal xarxa social en aquest moments juntament amb Twitter (Instagram forma part de Facebook). Amb simplement una cerca de facebook per internet, veurem gran quantitat de notícies de rastreig per part de facebook als seus usuaris fins i tot una vegada s’ha sortit de la sessió.

Pràcticament no hi ha (hi havia) opció en el referent de les xarxes socials: o Facebook o Twitter o Instagram. Ara sí.

Xarxes Federades i lliures

Dins els moviments lliures, tan dades com programari, han sorgit ja fa uns anys la proliferació de xarxes socials basades en protocols lliures, per tant interconnectables.

Un bon exemple d’aquestes xarxes és Mastodon. Mastodon és una xarxa social lliure on els seus usuaris, a l’igual que twitter, facebook, youtube… poden publicar missatges, fotografíes, vídeos i seguir i interactuar amb altres usuaris.

El que diferencia Mastodon de la resta de xarxes socials, és que és descentralitzada. Mastodon és basa en la interconnexió de diferents instàncies de l’aplicació, que entendrem com a instancia a servidors executant instal·lacions de Mastodon. Cada instancia és administrada independentment i és federa amb altres a fi d’intercanviar la informació.

Federation is a form of decentralization. Instead of a single central service that all people use, there are multiple services, that any number of people can use.

https://docs.joinmastodon.org/

Per tant cada instancia pot ser connectada (federar-se) a altres o simplement quedar aillada i ser un centre d’intercanvi de dades per a sols un grup de gent.

A continuació, exemples de diferents graus de descentralització.

  • Centralitzades: Twitter, Facebook, Instagram
  • Federades: Email, XMPP, phone networks, physical mail
  • Distribuïdes: BitTorrent, IPFS, Scuttlebutt
Centralitzada, federada, distribuïda font: https://docs.joinmastodon.org/

Hi ha varis protocols lliures i en el cas de Mastodon s’utilitza el protocol d’ActivityPub, per intercanviar la informació, per tan qualsevol aplicació que implementi aquest protocol pot interactuar amb la xarxa.

Tipus de xarxes alternatives a les centralitzades

Per cercar alternatives a les diferents xarxes socials centralitzades a lliures, s’han creat difents projectes i alguns d’ells son interconnectables, ja que impementen el mateix protocol, per tant s’entenen en l’intercanvi de dades. No son tots els que hi ha ni molt manco, sols uns exemples.

Gràcies als protocols lliures

Aquestes xarxes socials es poden donar gràcies als protocols lliures. N’hi ha varis. Una llista dels més coneguts i les xarxes que ho implementen (no tots):

  • ActivityPub: Mastodon, WriteFreely, Peertube, Pleroma, FunkWhale, PixelFeed, SocialHome, Hubzilla, Friendica, Misskey, Plume, …
  • diaspora: diaspora*, SocialHome, Hubzilla, Friendica
  • Zot: Hubzilla, Zap
  • OStatuts: Hubzilla, GNU Social, Friendica, Pleroma
  • DFRN: Friendica

font: https://fediverse.party/

Hi ha més xarxes, la majoria experimentals i amb pocs usuaris, teniu un llistat a https://fediverse.party/en/miscellaneous que descriu quines tecnologies usa i quin(s) protocols desenvolupa.

Com veis és un tema on ens hi podem tirar hores i que és ben interessant.

A continuació deix uns enllaços que poden ser útils per entrar en aquest món de les xarxes socials lliures:

L’ús del programari lliure per a la gestió dels centres educatius

És conegut que les grans multinacionals tecnològiques GAFAM (Google, Amazon, Facebook, Apple, Microsoft) usen les nostres dades en el seu benefici. Com ho fan? ens proporcionen eines “gratuïtes” a canvi de l’ús de les nostres dades.

En el cas dels centres educatius, no és, ni molt manco diferent. Google posa a disposició de les entitats educatives el GSuite for education, completament gratuït i il·limitat en nombre d’usuaris i dades. El passat 25 de febrer, el diari El mundo en la seva secció de tecnologia va publicar Escándalo en Google: así “espía” a millones de niños en el colegio y en su casa. Això no és d’avui ni molt manco.

Cal dir que la noticia de El Mundo és molt groguenca, com és normal. Google és una multinacional que “juga” amb les dades i la informació de la gent, els seus usuaris. És el seu actiu més preciat. No viuen del cercador, des de fa molts d’anys. Ens ofereixen serveis totalment gratuïts que ens fan molt de servei. Per exemple Cercador, Correu electrònic, Analítica web, servidors DNS, … i la que més benefici els hi aporta, la publicitat.

Per a la publicitat, la informació és poder. Generar anuncis efectius que vagin dirigit a les persones que exactament volem que arribin, la conversió de la publicitat en doblers, és més elevada que els anuncis tradicionals.

D’on treuen la informació? de nosaltres. Per això, els serveis que ens ofereixen la majoria son gratuïts, però amb el cost de les nostres dades.

Anem al quid de la qüestió. Hi ha alternativa a Google? jo crec que, Sí, però, sempre un però, i tendrà cost econòmic.

El que és pot proposar es l’ús de servidors que siguin propietat del centre o directament del Govern/Conselleria i usar programari lliure.

A continuació uns exemples de programari lliure que es poden usar

Exemples: (segur que n’hi ha més, aquests son els que conec)

Què fa falta? Ser conscients de les nostres dades. Poder gaudir de la sobirania de dades, és més, ser propietaris de les nostres dades. Falta consciència, per part de totes i tots i sobre tot per part de les institucions públiques de l’estat.

EFF Privacy Badger romp UltimaHora.es, Per què serà?

Passejant per les xarxes socials sempre vas a caure a alguna publicació dels principals diaris. En el cas de Mallorca, un d’ells és UltimaHora.

Fa uns dies que vaig entrar a una noticia i vaig veure molt extrany que no es carregaven els estils. La web es veia totalment desmaquetada. En aquell moment no vaig fer cas. Vaig pensar, un error puntual de carrega, si més no, vaig fer l’F5 de rigor, com mana la llei d’internet. No es va arreglar. Interessant, però no li vaig fer cas.

Dies més tard, ho vaig tornar a provar. Mateix resultat. En aquest cas vaig revisar el connector PrivaciBadger que tenc instal·lat i vaig veure que blocava 18 dominis diferents. Uep! pot ser vagi per aquí la cosa. Si no sabeu que és el PrivaciBadger, us recoman que aneu a la seva web i veureu com funciona i de que intenta protegir-nos.

Accés a la web del diari Ultima Hora. Es pot veure que està desmaquetat.

Revisant amb les eines de desenvolupador del navegador, veig que les peticions dels fitxers CSS, queden blocats.

Captura de pantalla de les eines de desenvolupador
Eines de desenvolupadors de Chrome. Peticions als fitxers CSS blocats.

El domini on es fa la petició és uh.gsstatic.es, que segons el whois el propietari és l’empresa Hora Nova, i està manejat amb CloudFlare.

El PrivacyBadger bloca completament les peticions a aquest domini. Què deuen fer malament? El component va aprenent sobre la marxa, mentres anam navegant amb el connector activat.

No només bloca aquest domini, si no, tots aquests (dades del propi PrivacyBadger):

Privacy Badger (www.eff.org/privacybadger) es una extensión de navegador que aprende automáticamente a bloquear rastreadores invisibles. Privacy Badger está hecho por la Electronic Frontier Foundation, una organización sin ánimo de lucro que lucha por sus derechos en línea.

Privacy Badger ha encontrado 16 rastreadores potenciales en www.ultimahora.es:

acdn.adnxs.com
ib.adnxs.com
ping.chartbeat.net
cdnjs.cloudflare.com
bidder.criteo.com
securepubads.g.doubleclick.net
banners.evoluhcion.es
www.google-analytics.com
uh.gsstatic.es
shb.richaudience.com
sync.richaudience.com
eus.rubiconproject.com
fastlane.rubiconproject.com
prebid-a.rubiconproject.com
sb.scorecardresearch.com
prg.smartadserver.com

La privacitat és i ha de ser important, el “jo no he d’amagar res” o el “m’és igual, no faig res dolent” no ha de ser una excusa. A dia d’avui, qualsevol acció dins internet és or pur per a les companyies que es dediquen a quest negoci.

Despedim el negre 2018 i entram al 2019

El 2018, buf, quin any! ha vengut a ser com una muntanya russa, malauradament ha estat més per avall que per amunt.

L’octubre no va ser el millor mes, una nova estrella al cel s’il·luminà, per a la millor persona del mon mundial, víctima d’un càncer que arrossegava de feia uns anys.

Existeixen molts amors però la vida t’ensenyarà que no hi ha cap com el d’una mare.

https://edithsme.blogspot.com/2014/03/50-frases-per-les-mares-i-7-poemes.html

Mumareta, que el passat 25 de desembre hagués fet 63 anys, plena de vida i amor cap a tothom que l’envoltava, els seus fills, nebots, nets i qualsevol persona, encara que no la conegués. Era la bondat personificada, tothom que m’atura, me diu el mateix

Era la persona més alegre que coneixia, sempre contenta, sempre feliç, sempre una bona paraula, … era única

Estic molt content i emocionat, sempre tendrà un lloc al nostre cor i pensaments.

És molt dur i molt mal de passar, que s’envagi la persona que t’ha donat la vida i sobre tot qui m’ha fet ser qui soc. De jovenet, que supòs que com tots, li vaig donar molts de mals de caps, no volia estodiar, en duia de suspeses, massa, … però va aconseguir tenir un fill universitari 😀 i el passat setembre, professor, que be que ho va poder disfrutar encara que fossin unes setmanetes.

No me surten les paraules, de fet, no toc bolla 🙂 sols agrair a tot el meu voltant el que han fet, fan i faran per nosaltres. No puc demanar res més per aquest 2019, només salut i alegria per tothom.