Compare commits

...

2 commits

Author SHA1 Message Date
e4e3017745 Webring
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2022-12-20 16:16:02 -03:00
52e874b071 compilar: Permitir inyectar contenido de otra página 2022-12-20 16:13:46 -03:00
9 changed files with 864 additions and 16 deletions

View file

@ -10,6 +10,7 @@ pipeline:
- pnpm set registry http://npm.proxy.coso
- pnpm install
- ./tool refresh_feeds
- ./tool check
- ./tool build

32
Mi webring.gen Executable file
View file

@ -0,0 +1,32 @@
#!/usr/bin/env lua5.1
local template = [[
<!-- License-Id: CC0-1.0 -->
<section class="webring">
<section class="articles">
{{range .Articles}}
<div class="article">
<h4 class="title">
<a href="{{.Link}}" target="_blank" rel="noopener">{{.Title}}</a>
</h4>
<p class="summary">{{.Summary}}</p>
<small class="source">
via <a href="{{.SourceLink}}">{{.SourceTitle}}</a>
</small>
<small class="date">{{.Date | datef "January 2, 2006"}}</small>
</div>
{{end}}
</section>
<p class="attribution">
Generado usando
<a href="https://git.sr.ht/~sircmpwn/openring">openring</a>💕
</p>
</section>
<!--style>
</style-->
]]
os.execute("echo '"..template..[[' | openring \
-s file:cached-feeds/fauno.xml \
-s file:cached-feeds/copiona.xml
]])

272
cached-feeds/copiona.xml Normal file
View file

@ -0,0 +1,272 @@
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es"><generator uri="https://jekyllrb.com/" version="4.3.1">Jekyll</generator><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" hreflang="es" /><updated>2022-12-18T01:25:58-03:00</updated><id>/feed.xml</id><title type="html">copiona.com | un bunker biteario de @librenauta</title><entry><title type="html">Log 016</title><link href="/log-16/" rel="alternate" type="text/html" title="Log 016" /><published>2022-12-17T00:00:00-03:00</published><updated>2022-12-17T18:30:05-03:00</updated><id>/log-16</id><content type="html" xml:base="/log-16/"><![CDATA[<ul>
<li>Así se ve un arrayán cito.</li>
</ul>
<p>brc.</p>]]></content><author><name>librenauta</name></author><category term="log" /><category term="log" /><summary type="html"><![CDATA[Así se ve un arrayán cito.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="/public/log/arrayan.jpg" /><media:content medium="image" url="/public/log/arrayan.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Quemar un libro 5 [ La Femme Squelette ]</title><link href="/quemar-un-libro-5/" rel="alternate" type="text/html" title="Quemar un libro 5 [ La Femme Squelette ]" /><published>2022-12-07T00:00:00-03:00</published><updated>2022-12-09T12:20:21-03:00</updated><id>/quemar-un-libro-5</id><content type="html" xml:base="/quemar-un-libro-5/"><![CDATA[<h1>La Femme Squelette by clarissa pinkola estés &amp; My Atlegrim</h1>
<p>es un libro de ilustración bellisimo impreso en risografía. tiene una tapa con colores fluo radiantes hecha en serigrafía (estimo que a máquina). vale la pena cada página.</p>
<p>Gracias sofiti por este prestamo, gracias marjo por tu lectura en francés y traducción en tiempo real :D</p>
<p><img src="public/5bd49843-356d-4183-8afd-02a55c8e4600/la-femme-squelette-1.jpg" alt="la-femme-squelette" /></p>
<p><img src="public/5bd49843-356d-4183-8afd-02a55c8e4600/la-femme-squelette-2.jpg" alt="la-femme-squelette" /></p>
<p>está escaneado con 600dpi para poder capturar la trama de la risografía donde aparezca.</p>
<p><a href="public/5bd49843-356d-4183-8afd-02a55c8e4600/la-femme-squelette.pdf">Acá para descargar el libro y mirarlo en zoom</a></p>
<p>el texto es de un libro de Estés llamado “Mujeres que corren con los lobos”</p>
<p><a href="https://www.didierbressan-psychotherapie.com/blog/interpretation-des-contes-de-fee/la-femme-squelette.html">Acá para ver el texto en francés</a></p>
<h2>La Mujer Esqueleto:</h2>
<p>Había hecho algo que su padre no aprobaba, aunque ya nadie recordaba lo que era. Pero su padre la había arrastrado al acantilado y la había arrojado al mar. Allí los peces se comieron su carne y le arrancaron los ojos. Mientras yacía bajo la superficie del mar, su esqueleto daba vueltas y más vueltas en medio de las corrientes.
Un día vino un pescador a pescar, bueno, en realidad, antes venían muchos pescadores a esta bahía. Pero aquel pescador se había alejado mucho del lugar donde vivía y no sabía que los pescadores de la zona procuraban no acercarse por allí, pues decían que en la cala había fantasmas.</p>
<p>El anzuelo del pescador se hundió en el agua y quedó prendido nada menos que en los huesos de la caja torácica de la Mujer Esqueleto. El pescador Pensó: “¡He pescado uno muy gordo! ¡Uno de los más gordos!” Ya estaba calculando mentalmente cuántas personas podrían alimentarse con aquel pez tan grande, cuánto tiempo les duraría y cuánto tiempo él se podría ver libre de la ardua tarea de cazar. Mientras luchaba denodadamente con el enorme peso que colgaba del anzuelo, el mar se convirtió en una agitada espuma que hacía balancear y estremecer el kayak, pues la que se encontraba debajo estaba tratando de desengancharse. Pero, cuanto más se esforzaba, más se enredaba con el sedal. A pesar de su resistencia, fue inexorablemente arrastrada hacia arriba, remolcada por los huesos de sus propias costillas.</p>
<p>El cazador, que se había vuelto de espaldas para recoger la red, no vio cómo su calva cabeza surgía de entre las olas, no vio las minúsculas criaturas de coral brillando en las órbitas de su cráneo ni los crustáceos adheridos a sus viejos dientes de marfil. Cuando el pescador se volvió de nuevo con la red, todo el cuerpo de la mujer había aflorado a la superficie y estaba colgando del extremo del kayak, prendido por uno de sus largos dientes frontales.</p>
<p>“¡Ay!”, gritó el hombre mientras el corazón le caía hasta las rodillas, sus ojos se hundían aterrorizados en la parte posterior de la cabeza y las orejas se le encendían de rojo. “¡Ay!”, volvió a gritar, golpeándola con el remo para desengancharla de la proa y remando como un desesperado rumbo a la orilla. Como no se daba cuenta de que la mujer estaba enredada en el sedal, se pegó un susto tremendo al verla de nuevo, pues parecía que ésta se hubiera puesto de puntillas sobre el agua y lo estuviera persiguiendo. Por mucho que zigzagueara con el kayak, ella no se apartaba de su espalda, su aliento se propagaba sobre la superficie del agua en nubes de vapor y sus brazos se agitaban como si quisieran agarrarlo y hundirlo en las profundidades.</p>
<p>“¡Aaaaayy!”, gritó el hombre con voz quejumbrosa mientras se acercaba a la orilla. Saltó del kayak con la caña de pescar y salió corriendo, pero el cadáver de la Mujer Esqueleto, tan blanco como el coral, lo siguió sobre su espalda, todavía prendido en el sedal. El hombre corrió sobre las rocas y ella lo siguió. Corrió sobre la tundra helada y ella lo siguió. Corrió sobre la carne puesta a secar y la hizo pedazos con sus botas de piel de foca.</p>
<p>La mujer lo seguía por todas partes e incluso había agarrado un poco de pescado helado mientras él la arrastraba en pos de sí. Y ahora estaba empezando a comérselo, pues llevaba muchísimo tiempo sin llevarse nada a la boca. Al final, el hombre llegó a su casa de hielo, se introdujo en el túnel y avanzó gateando hacia el interior. Sollozando y jadeando permaneció tendido en la oscuridad mientras el corazón le latía en el pecho como un gigantesco tambor. Por fin estaba a salvo, sí, a salvo gracias a los dioses, gracias al Cuervo, sí, y a la misericordiosa Sedna, estaba… a salvo… por fin.</p>
<p>Pero, cuando encendió su lámpara de aceite de ballena, la vio allí acurrucada en un rincón sobre el suelo de nieve de su casa, con un talón sobre el hombro, una rodilla en el interior de la caja torácica y un pie sobre el codo. Más tarde el hombre no pudo explicar lo que ocurrió, quizá la luz de la lámpara suavizó las facciones de la mujer o, a lo mejor, fue porque él era un hombre solitario. El caso es que se sintió invadido por una cierta compasión y lentamente alargó sus mugrientas manos y, hablando con dulzura como hubiera podido hablarle una madre a su hijo, empezó a desengancharla del sedal en el que estaba enredada.</p>
<p>“Bueno, bueno”. Primero le desenredó los dedos de los pies y después los tobillos. Siguió trabajando hasta bien entrada la noche hasta que, al final, cubrió a la Mujer Esqueleto con unas pieles para que entrara en calor y le colocó los huesos en orden tal como hubieran tenido que estar los de un ser humano.</p>
<p>Buscó su pedernal en el dobladillo de sus pantalones de cuero y utilizó unos cuantos cabellos suyos para encender un poco más de fuego. De vez en cuando la miraba mientras untaba con aceite la valiosa madera de su caña de pescar y enrollaba el sedal de tripa. Y ella, envuelta en las pieles, no se atrevía a decir ni una sola palabra, pues temía que aquel cazador la sacara de allí, la arrojara a las rocas de abajo y le rompiera todos los huesos en pedazos.</p>
<p>El hombre sintió que le entraba sueño, se deslizó bajo las pieles de dormir y enseguida empezó a soñar. A veces, cuando los seres humanos duermen, se les escapa una lágrima de los ojos. No sabemos qué clase de sueño lo provoca, pero sabemos que tiene que ser un sueño triste o nostálgico. Y eso fue lo que le ocurrió al hombre.</p>
<p>La Mujer Esqueleto vio el brillo de la lágrima bajo el resplandor del fuego y, de repente, le entró mucha sed. Se acercó a rastras al hombre dormido entre un crujir de huesos y acercó la boca a la lágrima. La solitaria lágrima fue como un río y ella bebió, bebió y bebió hasta que consiguió saciar su sed de muchos años.</p>
<p>Después, mientras permanecía tendida al lado del hombre, introdujo la mano en el interior del hombre dormido y le sacó el corazón, el que palpitaba tan fuerte como un tambor. Se incorporó y empezó a golpearlo por ambos lados: ¡Pom, Pom!…. ¡Pom, Pom!</p>
<p>Mientras lo golpeaba, se puso a cantar “¡Carne, carne, carne! ¡Carne, carne, carne! “. Y, cuanto más cantaba, tanto más se le llenaba el cuerpo de carne. Pidió cantando que le saliera el cabello y unos buenos ojos y unas rollizas manos. Pidió cantando la hendidura de la entrepierna, y unos pechos lo bastante largos como para envolver y dar calor y todas las cosas que necesita una mujer.</p>
<p>Y, cuando terminó, pidió cantando que desapareciera la ropa del hombre dormido y se deslizó a su lado en la cama, piel contra piel. Devolvió el gran tambor, el corazón, a su cuerpo y así fue como ambos se despertaron, abrazados el uno al otro, enredados el uno en el otro después de pasar la noche juntos, pero ahora de otra manera, de una manera buena y perdurable. La gente que no recuerda la razón de su mala suerte dice que la mujer y el pescador se fueron, y a partir de entonces las criaturas que ella había conocido durante su vida bajo el agua, se encargaron de proporcionarles siempre el alimento. La gente dice que es verdad y que eso es todo lo que se sabe.</p>
<p>extraido de aquí: <a href="http://literatura-con-estrogenos.blogspot.com/2014/01/el-cuento-de-la-mujer-esqueleto.html">http://literatura-con-estrogenos.blogspot.com/2014/01/el-cuento-de-la-mujer-esqueleto.html</a></p>]]></content><author><name>librenauta</name></author><category term="proyectos" /><category term="scanner" /><category term="book" /><category term="La Femme Squelette" /><summary type="html"><![CDATA[La Femme Squelette by clarissa pinkola estés & My Atlegrim]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="/public/5bd49843-356d-4183-8afd-02a55c8e4600/la-femme-squelette.jpg" /><media:content medium="image" url="/public/5bd49843-356d-4183-8afd-02a55c8e4600/la-femme-squelette.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Digitalidad Disminuida</title><link href="/digitalidad-disminuida/" rel="alternate" type="text/html" title="Digitalidad Disminuida" /><published>2022-11-21T00:00:00-03:00</published><updated>2022-11-21T00:00:00-03:00</updated><id>/digitalidad-disminuida</id><content type="html" xml:base="/digitalidad-disminuida/"><![CDATA[<h1>Digitalidad disminuida</h1>
<p><a href="https://dd.copiona.com">dd.copiona.com</a> | tenemos un mundo y nos esforzamos por hacer la simulación de otro | fanzine brr-art para mañana | filmina+web | retromedia ?</p>
<p><img src="public/b26197ae-03cf-47ce-9c7b-094f89c6f6fb/digitalidad-disminuida-2.png" alt="digitalidad-disminuida-2" /></p>
<p><img src="public/b26197ae-03cf-47ce-9c7b-094f89c6f6fb/digitalidad-disminuida-3.png" alt="digitalidad-disminuida-3" /></p>
<p>digitalidad disminuida es un fanzine que podés leer siempre y cuando imprimas una <a href="public/b26197ae-03cf-47ce-9c7b-094f89c6f6fb/digitalidad-disminuida.pdf">filimina</a> o me la compres en algúna feria y la apoyes sobre tu monitor al entrar en <a href="https://dd.copiona.com">dd.copiona.com</a>.</p>
<p>Este fanzine se trata de poder agregar una capa adicional en el vector que sale de la digitalidad para poder entenderla mejor. Para adentro de la computadoras las capas de abstracción cada vez son más complejas. Estuve pensando que en vez de querer aumentar nuestra realidad con esas capas de abstracción, que además siempre terminan siendo funcionales a nuestra propia explotación (caso de cascos de realidad aumentada para entrar a la ofician desde tu homeoffice), podemos pensar que la digitalidad esta disminuida y que necesita de nosotras para poder funcionar. apoyar una filmina en un monitor, para aumentar la digitalidad. 2 capas para construir un mensaje. un futuro.</p>
<figure class="w-100">
<video src="public/b26197ae-03cf-47ce-9c7b-094f89c6f6fb/digitalidad-disminuida.mp4" autoplay="autoplay" loop="loop" controls="controls" >
</video>
</figure>]]></content><author><name>Librenauta</name></author><category term="proyectos" /><category term="digitalidad" /><category term="simulación" /><category term="art" /><summary type="html"><![CDATA[digitalidad disminuida cada vez más.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="/public/b26197ae-03cf-47ce-9c7b-094f89c6f6fb/digitalidad-disminuida-1.jpg" /><media:content medium="image" url="/public/b26197ae-03cf-47ce-9c7b-094f89c6f6fb/digitalidad-disminuida-1.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Un acto</title><link href="/nube-8/" rel="alternate" type="text/html" title="Un acto" /><published>2022-11-12T00:00:00-03:00</published><updated>2022-11-12T00:00:00-03:00</updated><id>/nube-8</id><content type="html" xml:base="/nube-8/"><![CDATA[<p>Ayer hice mi primer muestra. cian me ayudó con la preparación de todo &lt;3.</p>]]></content><author><name>Librenauta</name></author><category term="nube" /><category term="blog" /><summary type="html"><![CDATA[Ayer hice mi primer muestra. cian me ayudó con la preparación de todo &lt;3.]]></summary></entry><entry><title type="html">Un acto</title><link href="/nube-9/" rel="alternate" type="text/html" title="Un acto" /><published>2022-11-12T00:00:00-03:00</published><updated>2022-11-12T00:00:00-03:00</updated><id>/nube-9</id><content type="html" xml:base="/nube-9/"><![CDATA[<p>Ayer le dije a la chica que me gusta, que me gusta.</p>]]></content><author><name>Librenauta</name></author><category term="nube" /><category term="blog" /><summary type="html"><![CDATA[Ayer le dije a la chica que me gusta, que me gusta.]]></summary></entry><entry><title type="html">degradación digital de un otoño artificial</title><link href="/degradaci%C3%B3n-digital/" rel="alternate" type="text/html" title="degradación digital de un otoño artificial" /><published>2022-11-10T00:00:00-03:00</published><updated>2022-11-10T00:00:00-03:00</updated><id>/degradaci%C3%B3n-digital</id><content type="html" xml:base="/degradaci%C3%B3n-digital/"><![CDATA[<h1>Degradación digital de un otoño artificial.</h1>
<p>Muestra a montar a partir de las 14hs en la biblioteca osmiornica a cargo de librenauta.</p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/flyer_osmiornica.png" alt="flyer_osmiornica" /></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-1.jpg" alt="degradación-digital-1" /></p>
<h2>Memoria:</h2>
<p>degradar con el software generalmente está vinculado a la compresión y pérdida de calidad. como bien dice hito steyerl en <a href="https://copiona.com/en-defensa-de-la-imagen-pobre/">En defensa de la imagen pobre</a></p>
<blockquote>
<p>“La imagen pobre es una copia en movimiento. Su calidad es mala, su resolución deficiente. Se deteriora conforme acelera. Es el fantasma de una imagen, una vista previa, una miniatura, una idea errante, una imagen itinerante distribuida de forma gratuita, exprimida a través de lentas conexiones digitales, comprimida, reproducida, extraída, remezclada, así como copiada y pegada en otros canales de distribución.”</p>
</blockquote>
<p>una imágen de mala calidad es una imagen pobre, despojada del esplendor de la definición, una lumpenproletaria de la sociedad de clases.</p>
<p>pero a partir de esta máxima muy hermosa que escribe hito, estuve pensando en realizar un proceso de degradación digital sobre hojas escaneadas (después de pasar el otoño del 2021 mirando y juntando hojas degradadas de la huerta que habité). En la construcción conceptual, junto a un grupo hermoso en el taller de “línea de fuga” con [julieta marra, francis, julia, danna, delfi, manuel y tone ] jugando con la impresión con la ticketera parecía interesante imprimir las hojas escaneadas.</p>
<ul>
<li></li>
</ul>
<p>En la línea de la degradación no me interesaba usar el recurso de la pixelación, sino que parte del concepto era poder emular un poco esta fascinación por los patrones de construcción de hojas que tienen las plantas [1,1,2,3,5,8,12] :D.</p>
<ul>
<li></li>
</ul>
<p>Usando el histórico <code>ascii art</code> como inspiración y seleccionando una paleta de caracteres específica es posible hacer un acercamiento. degradar la imagen en síntesis, en pérdida de información, pero sin perder resolución. una degradación que intenta simular el proceso natural. imprimir el otoño con hardware, degradar las hojas con software.</p>
<p>ahora lo divertido, cómo se hace todo esto?</p>
<h2>receta:</h2>
<p>paleta de caractéres:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>PALETTE : ▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -
</code></pre></div></div>
<p>la gema que use es:</p>
<p>gema: <a href="https://rubygems.org/gems/image2ascii">https://rubygems.org/gems/image2ascii</a></p>
<p>repo: <a href="https://github.com/michaelkofron/image2ascii#image2ascii">https://github.com/michaelkofron/image2ascii#image2ascii</a></p>
<p>dependencias:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ sudo dnf install ImageMagick
$ sudo dnf install ImageMagick-devel
$ gem install image2ascii
$ gem install imagemagick
$ gem install rmagick
$ gem install raimbow
</code></pre></div></div>
<p>luego pasar imagen a caractéres ej:</p>
<p><code>image2ascii $archivo.png -t 30 -g -x '▓ ▒ ░ ┐┌ ┤ │ | - . ~'</code></p>
<p>con <code>-t</code> podés indicar el % de pantalla que querés que ocupe el resultado de la transformación</p>
<p>con <code>-g</code> utiliza escala de grises (por defecto es a color)</p>
<p>con <code>-x</code> podés indicar los caractéres específicos para usar.</p>
<h2>Nombres</h2>
<p>impresora: 80
hoja$: h$.png
hoja en caractéres: h$-[1,2,3,4,5]</p>
<h3>imprimir desde terminal</h3>
<p><code>pl -d 80 $archivo</code></p>
<p>parece que se pueden imprimir muchos archivos uno seguido del otro con</p>
<p><code>lp -d 80 h1.png h2.png h3.png</code></p>
<h2>primer hoja h1</h2>
<p>con lo siguiente lo que hacemos es la conversion de la imagen a caractéres , guardarla en un archivo h.temp.txt y luego enviarla a la impresora.</p>
<p>Es posible imprimir de esta forma directamente. lo que sucede es que la ticketera tiene un ancho específico (50mm) donde entran una cantidad especifica de caractéres, entonces la version de 80% contiene muchisimos más caractéres que la version de 3%. lo cual hace que se impriman sin forma. o sin la forma igual a la hoja original. entonces hay forma de escalar la cantidad de caractéres por pulgada a imprimir :D. por eso despues de <code>lp -d 80</code> esta la flag <code>-d cpi=68 -0 lpi=64</code> llegar a esto me llevo varios rollos de pruebas :v</p>
<h3>80%</h3>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>image2ascii h1.png -t 80 -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' &gt; h-temp.txt &amp;&amp; lp -d 80 -o cpi=68 -o lpi=64 h-temp.txt
</code></pre></div></div>
<h3>50%</h3>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>image2ascii h1.png -t 50 -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' &gt; h-temp.txt &amp;&amp; lp -d 80 -o cpi=48 -o lpi=22 h-temp.txt
</code></pre></div></div>
<h3>30%</h3>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>image2ascii h1.png -t 30 -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' &gt; h-temp.txt &amp;&amp; lp -d 80 -o cpi=27 -o lpi=13.5 h-temp.txt
</code></pre></div></div>
<h3>20%</h3>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>image2ascii h1.png -t 20 -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' &gt; h-temp.txt &amp;&amp; lp -d 80 -o cpi=18 -o lpi=8 h-temp.txt
</code></pre></div></div>
<h3>10%s</h3>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>image2ascii h1.png -t 10 -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | .' &gt; h-temp.txt &amp;&amp; lp -d 80 -o cpi=9 -o lpi=4 h-temp.txt
</code></pre></div></div>
<h3>3% pantalla</h3>
<p><code>image2ascii h4.png -t 3 -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | .' &gt; h-temp.txt &amp;&amp; lp -d 80 -o cpi=3 -o lpi=1.5 h-temp.txt</code></p>
<h3>resultado</h3>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>--------- ┘├---------------------
--------|──└┌--------------------
------- ── ░─--------------------
------ ░──░▓┼ -------------------
-----| └└└─ └┐ ----------------
-----└─ └└─ └░┘|--------------
----├░─ ┼┼ └ ┼┼┼ ------------
--- ─└ ┼ ─ └┼ ┼ ┘ ----------
--│▒░─ ┼ ┼ ─ ┼┼├ ┼ ┌---------
- ░─└ ┼┼ ┼┘├┘┘┘┘┘┼ |-------
- ▒ └└ ┼┘├├├┘┘ ┼ ─░ ------
-┼ ─ └ ┼ ┼ ─├┘┘├┘ ┼┼┼ └ ├-----
|▒ ─└ ┘┘┘┘ ├ ┘┘┘ ├┘ ┘ ┼ ░ ----
░└ ┼ ┼ ┘┘┘┘─├├├├├├ ┘├┼┼ ┼└ ---
┘ ┼┼┼ ┘┘├├┘├ ─ ├┐┘┘┐├├├ ├ |--
┌ └ ┼┘┘├├┐├ ┐ ├┐ ┘┘├├├ ├┘┼ ░├--
─ ┼ ├├├ ┘ ┐ ┘├├ ├┘┘┼ --
-|└ └ ┘ ┘┘ ┌ ┐ ┘┘┘ ├├┘ ─ -
---- ┘▒ ┼┘┘┘┘├ ├├├┘├┘├├├ ┼ ┼-
---|┘ ░─└─ └└┼┘└┼├┘├ ┘├├ ┘┼ -
---│ └ └└└ ┼ ┘ ┘┘┘┘├┘├ ┌├ └▒
-- └ └└└ ┼┼┼ ┼ ┼┼┼ ├┘├┘┘┘┼ ▒
--┤ └ └ └ ▒┼ ├┘┘ ├ ┼┼ └▒
--┤░─└└ └ ┼┼ └┼ ├┘┘┘┘ ├┘┘├ ┼┼└▒│
--| ─└└└ └┼┼┼ ┼ ┘ ┘┘┘ ┘└ └└ -
-- └└ ┼ ┼└└ ┘├┘├┘├┘┘ ┼ -
---├ └┼┼┼┼ ▓ ┘ ├┘┼┼┼ ┼ ┼--
---|░─ ┼ ┼┼ └ ▓┘┘┼├├┘ ┘ ─ --
---- ─ ┼┼┼┼ └└┼▓├ ┐┘ ┼ └ ┼└ │---
-----|┘░ ─ └──└ ┘├ ┼ ─└─ ┤----
-------┼└ ┼└└─▒┼ └└ ─░│-----
------- ─└┼ ┼ ░ ┼┼ ──░─|------
-------- ┼└┼┼ ─▒─┘┼ └─░░┌--------
---------- └ ─▓└┼┼ ░░├ ---------
-----------│└░░▓─┼─ ┌ -----------
------------ ░▓─└┐--------------
--------------| ▒|---------------
--------------┐▓└----------------
-------------| ----------------
------------ ▒ -----------------
------------ ┼ ------------------
</code></pre></div></div>
<h2>un registro de cómo pasó esto</h2>
<h3>proceso</h3>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-1.jpg" alt="degradación-digital-1" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-2.jpg" alt="degradación-digital-2" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-3.jpg" alt="degradación-digital-3" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-4.jpg" alt="degradación-digital-4" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-5.jpg" alt="degradación-digital-5" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-6.jpg" alt="degradación-digital-6" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-7.jpg" alt="degradación-digital-7" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-8.jpg" alt="degradación-digital-8" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-9.jpg" alt="degradación-digital-9" /></p>
<h2>muestra</h2>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-10.jpg" alt="degradación-digital-10" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-11.jpg" alt="degradación-digital-11" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-12.jpg" alt="degradación-digital-12" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-13.jpg" alt="degradación-digital-13" />
<img src="public/f698e707-4941-4733-b390-03d7c9d81904/degradaci%C3%B3n-digital-14.jpg" alt="degradación-digital-14" /></p>
<p>lo que resolví luego es hacer una exportación en buena resolución (300dpi) de cada una de las imágenes convertidas desde el archivo en .svg a .png para poder llamarlas directamente al imprimir. acá van las pruebas</p>
<p>imágenes procesos de degradación:</p>
<h2>hoja 1</h2>
<p><code>lp -d 80 h1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h1.png" alt="h1" /></p>
<p><code>lp -d 80 h1-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h1-1.jpg" alt="h1" /></p>
<p><code>lp -d 80 h1-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h1-2.jpg" alt="h1" /></p>
<p><code>lp -d 80 h1-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h1-3.jpg" alt="h1" /></p>
<p><code>lp -d 80 h1-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h1-4.jpg" alt="h1" /></p>
<p><code>lp -d 80 h1-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h1-5.jpg" alt="h1" /></p>
<hr />
<h2>hoja 2</h2>
<p><code>lp -d 80 h2.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h2.jpg" alt="h2" /></p>
<p><code>lp -d 80 h2-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h2-1.jpg" alt="h2" /></p>
<p><code>lp -d 80 h2-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h2-2.jpg" alt="h2" /></p>
<p><code>lp -d 80 h2-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h2-3.jpg" alt="h2" /></p>
<p><code>lp -d 80 h2-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h2-4.jpg" alt="h2" /></p>
<p><code>lp -d 80 h2-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h2-5.jpg" alt="h2" /></p>
<h2>hoja 3</h2>
<p><code>lp -d 80 h3.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h3.jpg" alt="h3" /></p>
<p><code>lp -d 80 h3-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h3-1.jpg" alt="h3" /></p>
<p><code>lp -d 80 h3-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h3-2.jpg" alt="h3" /></p>
<p><code>lp -d 80 h3-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h3-3.jpg" alt="h3" /></p>
<p><code>lp -d 80 h3-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h3-4.jpg" alt="h3" /></p>
<p><code>lp -d 80 h3-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h3-5.jpg" alt="h3" /></p>
<h2>hoja 4</h2>
<p><code>lp -d 80 h4.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h4.jpg" alt="h4" /></p>
<p><code>lp -d 80 h4-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h4-1.jpg" alt="h4" /></p>
<p><code>lp -d 80 h4-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h4-2.jpg" alt="h4" /></p>
<p><code>lp -d 80 h4-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h4-3.jpg" alt="h4" /></p>
<p><code>lp -d 80 h4-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h4-4.jpg" alt="h4" /></p>
<p><code>lp -d 80 h4-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h4-5.jpg" alt="h4" /></p>
<h2>hoja 5</h2>
<p><code>lp -d 80 h5.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h5.jpg" alt="h5" /></p>
<p><code>lp -d 80 h5-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h5-1.jpg" alt="h5" /></p>
<p><code>lp -d 80 h5-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h5-2.jpg" alt="h5" /></p>
<p><code>lp -d 80 h5-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h5-3.jpg" alt="h5" /></p>
<p><code>lp -d 80 h5-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h5-4.jpg" alt="h5" /></p>
<p><code>lp -d 80 h5-1.png </code></p>
<p><img src="public/f698e707-4941-4733-b390-03d7c9d81904/h5-5.jpg" alt="h5" /></p>]]></content><author><name>Librenauta</name></author><category term="proyectos" /><category term="pattern" /><category term="degradación" /><category term="ascii art" /><summary type="html"><![CDATA[patrones generados con image2ascii desde escaneos de hojas]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="/public/f698e707-4941-4733-b390-03d7c9d81904/flyer_tranza.png" /><media:content medium="image" url="/public/f698e707-4941-4733-b390-03d7c9d81904/flyer_tranza.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Quemar un libro 2 [ Mil Sonidos - Roberto Paci Daló y Emanuele Quinz ]</title><link href="/quemar-un-libro-4/" rel="alternate" type="text/html" title="Quemar un libro 2 [ Mil Sonidos - Roberto Paci Daló y Emanuele Quinz ]" /><published>2022-10-31T00:00:00-03:00</published><updated>2022-06-15T19:20:21-03:00</updated><id>/quemar-un-libro-4</id><content type="html" xml:base="/quemar-un-libro-4/"><![CDATA[<h2>Mil Sonidos - Roberto Paci Daló y Emanuele Quinz</h2>
<p>Una vez con <a href="https://rapofran.com.ar/">rapo</a> hicimos un taller de mil mesetas pero enmarcado en nomadología,
un capítulo vinculado a la musica + deleuze y guattari.</p>
<p>a rapo no le fue suficiente entonces se topa con este libro y me dice: hay que escanearlo. cae a casa con un
budin y mientras mateamos escaneamos en loop mil sonidos. girar las paginas 156 veces.</p>
<p><img src="public/928f8f2d-4988-41eb-bd40-2f1fdd663fc0/mil-sonidos-roberto-paci-dal%C3%B3-emanuele-quinz-1.jpg" alt="scann-2" /></p>
<p><img src="public/928f8f2d-4988-41eb-bd40-2f1fdd663fc0/mil-sonidos-roberto-paci-dal%C3%B3-emanuele-quinz-2.jpg" alt="scann-2" /></p>
<p>ps psss <a href="pdf/mil-sonidos-roberto-paci-dal%C3%B3-emanuele-quinz.pdf">acá</a> tienen para descargar Mil Sonidos - Roberto Paci Daló y Emanuele Quinz</p>
<p><em>quemar en una luz para no perder el acceso</em></p>]]></content><author><name>librenauta + rapo</name></author><category term="proyectos" /><category term="scanner" /><category term="book" /><category term="libros" /><category term="quemar" /><category term="mil mesetas" /><summary type="html"><![CDATA[libro escaneado]]></summary></entry><entry><title type="html">Quemar un libro 2 [ Nuestros refugios a medio armar - Valeria Mussio ]</title><link href="/quemar-un-libro-3/" rel="alternate" type="text/html" title="Quemar un libro 2 [ Nuestros refugios a medio armar - Valeria Mussio ]" /><published>2022-10-31T00:00:00-03:00</published><updated>2022-10-31T14:20:21-03:00</updated><id>/quemar-un-libro-3</id><content type="html" xml:base="/quemar-un-libro-3/"><![CDATA[<h2>Nuestros refugios a medio armar - Valeria Mussio</h2>
<p>valeria es un glitch de internet, hace epubs con gifs. así la conocí yo. ahora leo sus poemas
y pienso que al final se puede ser todo esto: contener un corazón de 8bits y también contemplar la caída de un cometa brillando en nuestros ojos con esa imagen de un futuro que no fue.</p>
<p><img src="public/8022daa0-b6c2-4c26-bb10-8e24b9d547bc/nuestros-refugios-a-medio-armar.png" alt="scann-1" /></p>
<p><img src="public/8022daa0-b6c2-4c26-bb10-8e24b9d547bc/nuestros-refugios-a-medio-armar_laika_1.png" alt="scann-2" /></p>
<p><img src="public/8022daa0-b6c2-4c26-bb10-8e24b9d547bc/nuestros-refugios-a-medio-armar_laika_2.png" alt="scann-2" />
ps psss <a href="pdf/nuestros-refugios-a-medio-armar-valeria-mussio.pdf">acá</a> tienen para descargar Nuestros refugios a medio armar.</p>
<p><em>quemar en una luz para no perder el acceso</em></p>]]></content><author><name>librenauta</name></author><category term="proyectos" /><category term="scanner" /><category term="book" /><category term="libros" /><category term="quemar" /><category term="poesía" /><summary type="html"><![CDATA[libro escaneado]]></summary></entry><entry><title type="html">Un acto</title><link href="/nube-7/" rel="alternate" type="text/html" title="Un acto" /><published>2022-10-30T00:00:00-03:00</published><updated>2022-10-30T00:00:00-03:00</updated><id>/nube-7</id><content type="html" xml:base="/nube-7/"><![CDATA[<p>Escanear un libro es un acto de amor, siempre es para otre.</p>]]></content><author><name>Librenauta</name></author><category term="nube" /><category term="blog" /><summary type="html"><![CDATA[Escanear un libro es un acto de amor, siempre es para otre.]]></summary></entry><entry><title type="html">Bosque 2 [ BRC ]</title><link href="/bosque-2/" rel="alternate" type="text/html" title="Bosque 2 [ BRC ]" /><published>2022-10-15T00:00:00-03:00</published><updated>2022-10-15T19:20:21-03:00</updated><id>/bosque-2</id><content type="html" xml:base="/bosque-2/"><![CDATA[<h2>Bosque de BRC 2022</h2>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-1.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-2.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-3.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-4.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-5.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-6.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-7.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-8.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-9.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-10.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-11.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-12.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-13.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-14.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-15.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-16.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-17.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-18.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-19.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-20.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-21.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-22.jpg" alt="bosque-1" /></p>
<p><img src="public/89b6679b-020d-4e1e-a1e5-e640c18f40b5/bosque-23.jpg" alt="bosque-1" /></p>]]></content><author><name>librenauta</name></author><category term="proyectos" /><category term="flores" /><category term="naturaleza" /><category term="bariloche" /><category term="zoom" /><summary type="html"><![CDATA[Imágenes de un lugar]]></summary></entry></feed>

487
cached-feeds/fauno.xml Normal file
View file

@ -0,0 +1,487 @@
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es"><generator uri="https://jekyllrb.com/" version="4.2.0">Jekyll</generator><link href="https://fauno.endefensadelsl.org//feed.xml" rel="self" type="application/atom+xml" /><link href="https://fauno.endefensadelsl.org//" rel="alternate" type="text/html" hreflang="es" /><updated>2021-01-26T16:50:56-03:00</updated><id>https://fauno.endefensadelsl.org//feed.xml</id><title type="html">fauno</title><author><name>fauno</name></author><entry><title type="html">Yo no tengo nada que responder</title><link href="https://fauno.endefensadelsl.org//yo-no-tengo-nada-que-responder/" rel="alternate" type="text/html" title="Yo no tengo nada que responder" /><published>2020-05-10T00:00:00-03:00</published><updated>2020-05-10T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//yo-no-tengo-nada-que-responder</id><content type="html" xml:base="https://fauno.endefensadelsl.org//yo-no-tengo-nada-que-responder/">&lt;p&gt;Cuando se llega al punto en una discusión donde alguien asevera que no
tiene nada que ocultar es que hartamos porque estaba empiojada desde el
principio.&lt;/p&gt;
&lt;p&gt;No hay otra forma de responder que bardear para salvarnos, lo que no
genera simpatías con lo que estamos queriendo comunicar, porque más bien
nos pusimos hirientes.&lt;/p&gt;
&lt;p&gt;Mucho del discurso de nuestro activismo viene con tintes individualistas
liberales. Entonces la discusión estaba empiojada porque estábamos en
un campo de experiencias personales que no se resolvían en lo colectivo.&lt;/p&gt;
&lt;p&gt;Me gusta más el enfoque de &lt;a href=&quot;https://utopia.partidopirata.com.ar/zines/salarios_por_facebook.html&quot;&gt;salarios por
Facebook&lt;/a&gt;,
por ejemplo.&lt;/p&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Cuando se llega al punto en una discusión donde alguien asevera que no tiene nada que ocultar es que hartamos porque estaba empiojada desde el principio.</summary></entry><entry><title type="html">Contra la criptoculpa</title><link href="https://fauno.endefensadelsl.org//contra-la-criptoculpa/" rel="alternate" type="text/html" title="Contra la criptoculpa" /><published>2019-11-15T00:00:00-03:00</published><updated>2019-11-15T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//contra-la-criptoculpa</id><content type="html" xml:base="https://fauno.endefensadelsl.org//contra-la-criptoculpa/">&lt;p&gt;Hace años venimos instalando la imperiosa necesidad del cifrado de punta
a punta, grupal, ubicuo, automático, fácil… Sin embargo no paramos de
probar app tras app donde el cifrado siempre es una promesa vacía.&lt;/p&gt;
&lt;p&gt;Antes solo podía ser entre dos personas, desde el mismo dispositivo. O
había que encontrarse en persona y mostrarse los documentos, dejando
para siempre nuestro nombre legal y redes de confianza en la Internet
(la alternativa era ser criptopromiscuxs). Ahora podemos enviarnos
mensajes cifrados entre varies, siempre que no seamos muches, pero la
identidad está asociada a un número de teléfono que está asociado a
nuestra identidad estatal. O quizás podemos cifrar en grupo, pero solo
cuando todas las personas pueden prestar atención, tienen espacio en sus
celulares, tienen conexión total…&lt;/p&gt;
&lt;p&gt;Es eso o la vigilancia total, nos dicen todos estos proyectos que nos
colonizan la culpa y ahí vamos llevándola a nuestrxs colectivxs.&lt;/p&gt;
&lt;p&gt;Al final si excavamos nos terminan diciendo, también, que la
criptografía es difícil, &lt;strong&gt;no para nosotres&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Lo que no estamos discutiendo sin embargo es que toda la infraestructura
de telecomunicación digital no es confiable y está vigilada precisamente
porque no es nuestra ni está armada para ser nuestra aliada. En este
escenario del ciberespacio el enemigo es le otre.&lt;/p&gt;
&lt;p&gt;(Dónde están las identidades colectivas, la sexo-afectividad cyborg…)&lt;/p&gt;
&lt;p&gt;Y en este planteo, cuál es el problema de no seguir estos &lt;a href=&quot;hipotesis-sobre-la-criptografia/&quot;&gt;modelos de
cifrado que nos imponen&lt;/a&gt; y en cambio
nos proponemos construirnos ciberespacios de afinidad, donde la
desconfianza no sea posible porque hay cuidados mutuos.&lt;/p&gt;
&lt;p&gt;Esto implicaría, en términos tecnopolíticos, que empecemos a &lt;a href=&quot;nuestra_internet_es_de_jardines_inconexos/&quot;&gt;construir
estos ciberespacios para nosotres y nuestres
amigues&lt;/a&gt;, &lt;a href=&quot;https://utopia.partidopirata.com.ar/zines/manifiesto_por_la_prevencion_de_datos.html&quot;&gt;previniendo el
almacenamiento
total&lt;/a&gt;
convirtiéndolo en efímero o justo y necesario y cifrando, sí, pero solo
el transporte sin pretender cifrar cada mensaje individual.&lt;/p&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Hace años venimos instalando la imperiosa necesidad del cifrado de punta a punta, grupal, ubicuo, automático, fácil… Sin embargo no paramos de probar app tras app donde el cifrado siempre es una promesa vacía.</summary></entry><entry><title type="html">Hipótesis sobre la criptografía</title><link href="https://fauno.endefensadelsl.org//hipotesis-sobre-la-criptografia/" rel="alternate" type="text/html" title="Hipótesis sobre la criptografía" /><published>2019-01-22T00:00:00-03:00</published><updated>2019-01-22T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//hipotesis-sobre-la-criptografia</id><content type="html" xml:base="https://fauno.endefensadelsl.org//hipotesis-sobre-la-criptografia/">&lt;p&gt;Tenemos un montón de herramientas de cifrado para ocultar el contenido
de nuestras comunicaciones (OTR, Axolotl, TLS, OpenPGP, etc.) sin
embargo todas salvo OpenPGP solo admiten cifrar un canal de comunicación
entre dos puntas. Entre dos personas, entre dos computadoras, entre un
cliente y un servidor.&lt;/p&gt;
&lt;p&gt;Este modelo individualista de criptografía nació del cypherpunk (que de
punk no tenía nada…) y un modelo individualista de
hombres-cis-blancos-ricos-militarizados donde la única posibilidad es la
comunicación de uno a uno. Del mismo modo que el contrato social es de
uno a uno, en la criptografía &lt;em&gt;libertarian&lt;/em&gt; la identificación también es
de uno a uno.&lt;/p&gt;
&lt;p&gt;OpenPGP en cambio, nace de la necesidad de comunicarse entre activistas
anti-nucleares, con un modelo de identificación devenido de la
posibilidad de infiltración estatal y un modelo de confianza entre
personas devenido de las formas en que las personas transfieren
confianza entre sí. Confiamos más en alguien que nos presenta una
tercera persona de confianza que en alguien que llega un día sin que le
conozca nadie (y podríamos argumentar que también es una debilidad que
los servicios de control social saben explotar).&lt;/p&gt;
&lt;p&gt;No debería sorprender que dentro de la criptografía hegemónica
considerada moderna, el modelo de identificación y confianza de OpenPGP
sea considerado vetusto y complejo y algunos referentes hayan llamado a
su abandono.&lt;/p&gt;
&lt;p&gt;Sin embargo, es el único modelo que se plantea la comunicación entre
muchas puntas. Cuando la criptografía hegemónica se plantea en los
últimos años la posibilidad de necesitar comunicarse entre muchas
personas de forma cifrada, los modelos que aparecen son una extensión
del modelo social codificado por la criptografía individualista,
justificado en la supuesta neutralidad de la matemática.&lt;/p&gt;
&lt;p&gt;Entonces tenemos modelos donde la identificación entre participantes de
una conversación entre muchas personas necesita que cada persona se
identifique individualmente con cada otra, volviendo impracticable el
hecho entre más de siete personas, si confiamos en los números de
Dunbar. Y eso require 7^2 identificaciones, es decir 49 interacciones
en total antes que una grupa pueda estar segura que sus comunicaciones
están cifradas.&lt;/p&gt;
&lt;p&gt;Otros, como Axolotl (el modelo de Signal), esquivan el problema
enviando mensajes cifrados individuales. Es decir que en una grupa de 7
personas, tendría que enviar 6 copias del mismo mensaje, cifradas de
forma distinta.&lt;/p&gt;
&lt;p&gt;(OpenPGP, para comparar, genera una contraseña aleatoria con la que
cifra el mensaje y luego cifra la contraseña para todas las
participantes.)&lt;/p&gt;
&lt;p&gt;La hipótesis entonces, es que a esta altura del partido no tenemos
comunicaciones seguras entre muchas personas (en realidad ya las
tenemos, si usamos OpenPGP) porque no entra la posibilidad en el modelo
social de la criptografía hegemónica y que entonces cabe preguntarse
cómo se vería una criptografía contra-hegemónica, feminista, etc.&lt;/p&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Tenemos un montón de herramientas de cifrado para ocultar el contenido de nuestras comunicaciones (OTR, Axolotl, TLS, OpenPGP, etc.) sin embargo todas salvo OpenPGP solo admiten cifrar un canal de comunicación entre dos puntas. Entre dos personas, entre dos computadoras, entre un cliente y un servidor.</summary></entry><entry><title type="html">Hipótesis sobre el capacitismo creativo</title><link href="https://fauno.endefensadelsl.org//hipotesis-sobre-el-capacitismo-creativo/" rel="alternate" type="text/html" title="Hipótesis sobre el capacitismo creativo" /><published>2019-01-16T00:00:00-03:00</published><updated>2019-01-16T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//hipotesis-sobre-el-capacitismo-creativo</id><content type="html" xml:base="https://fauno.endefensadelsl.org//hipotesis-sobre-el-capacitismo-creativo/">&lt;p&gt;Es el capacitismo donde solo algunas personas tienen una capacidad
creativa excepcional que les hace merecedoras de privilegios únicos y
que oculta un entramado de otros privilegios, capital simbólico previo,
relaciones sociales, etc.&lt;/p&gt;
&lt;p&gt;Al mismo tiempo es el capacitismo de quienes critican la
institucionalidad de esos privilegios que las excluyen, pero que a su
vez no critican la excepcionalidad creativa.&lt;/p&gt;
&lt;p&gt;Sostenemos en cambio que todas las personas tenemos capacidad creativa y
que se da en millones de formas.&lt;/p&gt;
&lt;p&gt;Esto es tanto más importante en el período actual del capitalismo
cognitivo, donde el modelo californiano ha logrado extraer plusvalía de
esta capacidad infinita de la creatividad humana y no humana (pensemos
en los videos de animales que pululan por internet y nos salvan los
días de la alienación) que se pone en juego cotidiana, interna y
socialmente.&lt;/p&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Es el capacitismo donde solo algunas personas tienen una capacidad creativa excepcional que les hace merecedoras de privilegios únicos y que oculta un entramado de otros privilegios, capital simbólico previo, relaciones sociales, etc.</summary></entry><entry><title type="html">Sobre hablarle a lxs convencidxs</title><link href="https://fauno.endefensadelsl.org//sobre-hablarle-a-lxs-convencidxs/" rel="alternate" type="text/html" title="Sobre hablarle a lxs convencidxs" /><published>2019-01-16T00:00:00-03:00</published><updated>2019-01-16T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//sobre-hablarle-a-lxs-convencidxs</id><content type="html" xml:base="https://fauno.endefensadelsl.org//sobre-hablarle-a-lxs-convencidxs/">&lt;p&gt;A veces para cuidarnos tratamos de no caer en la trampa de discutir con
personas que tergiversan lo que decimos y que plantean preguntas
maliciosas. O por el contrario, incomodamos con nuestra propia agenda a
personas que no están convencidas ni tienen ganas de escucharnos.&lt;/p&gt;
&lt;p&gt;Cuando la conversación llega al “pero yo no tengo nada que ocultar”
comprendemos que la discusión estaba mal parida desde el principio y que
tal vez no haya que haberla tenido.&lt;/p&gt;
&lt;p&gt;Preferimos retirarnos antes que darnos cabezazos contra la pared.
Retirarnos antes que quemarnos, buscando personas amables con las que
sostener un diálogo entre iguales. No nos anima buscar tener la razón,
nos anima compartir.&lt;/p&gt;
&lt;p&gt;“¡Ah! ¡Pero entonces sólo le hablás a lxs convencidxs!”&lt;/p&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">A veces para cuidarnos tratamos de no caer en la trampa de discutir con personas que tergiversan lo que decimos y que plantean preguntas maliciosas. O por el contrario, incomodamos con nuestra propia agenda a personas que no están convencidas ni tienen ganas de escucharnos.</summary></entry><entry><title type="html">La infraestructura no es un problema técnico</title><link href="https://fauno.endefensadelsl.org//la-infraestructura-no-es-un-problema-tecnico/" rel="alternate" type="text/html" title="La infraestructura no es un problema técnico" /><published>2018-09-29T00:00:00-03:00</published><updated>2018-09-29T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//la-infraestructura-no-es-un-problema-tecnico</id><content type="html" xml:base="https://fauno.endefensadelsl.org//la-infraestructura-no-es-un-problema-tecnico/">&lt;p&gt;&lt;em&gt;Gracias a alf por la lectura y los aportes :)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Me dio síndrome de la escalera y me quedé pensando en lo que me
preguntaron hace unas semanas sobre la relación entre infraestructuras
autónomas y redes comunitarias a la que di una verborrágica
no-respuesta, así que ahí va lo que pensé después que podría haber
respondido y que es producto de otras miles de discusiones que hemos
tenido (así que me siento doblemente nabo además de paracaidista
culposo):&lt;/p&gt;
&lt;p&gt;La discusión entre infraestructuras autónomas y redes comunitarias es
que resulta bastante difícil explicar qué implica una infraestructura
autónoma en el contexto de Internet y los servicios en la maldita nube.
Y que hablar de infraestructura nos pone en el plano de los fierros y
los cables, entonces terminamos amontonades con las redes comunitarias.
Y no nos gusta, no porque no nos gusten las redes comunitarias, sino
porque tenemos otras especificidades, otras problemáticas y otros
frentes de lucha.&lt;/p&gt;
&lt;p&gt;No lidiamos con el espectro, por ejemplo, ni con las &lt;em&gt;telcos&lt;/em&gt;, porque
son nuestra infraestructura material, pero sí estamos en minoría en un
ciberespacio cada vez más googleizado/californizado. Vendría a ser la
misma lucha, la de la autonomía tecnológica, pero con otros enemigos
inmediatos y otras estrategias…&lt;/p&gt;
&lt;p&gt;Las infraestructuras autónomas son el entramado tecnológico y colectivo
de servidorxs que se plantean como espacios contra-hegemónicos dentro
del tendido de Internet, es decir como espacios de encuentro y de
resistencia, pero también como espacios fractales de
micro-centralización.&lt;/p&gt;
&lt;p&gt;Las infraestructuras autónomas apuntan a una estrategia de resistencia,
de tener alternativas en las grietas de Internet. Que no sea pura nube
y que les compañeres que no pueden disfrutar aún de una red comunitaria
que sea de todes, puedan navegar Internet como si todavía fuera el
ciberespacio que declarábamos independiente pero que ya dejó de serlo.&lt;/p&gt;
&lt;p&gt;En esa discusión a la que hacía referencia nos dimos cuenta que hablar
de infraestructuras autónomas venía a ser un mal nombre, que nos planta
en el territorio simbólico de la ingeniería y la tecnocracia. Y en un
colonialismo técnico que no siempre estamos dispuestes a plantearnos
desmantelar y que nace de nuestro afán por implementar la
infraestructura hegemónica bajo formas libres. Nosotres preferíamos
hablar de vecindarios y hasta &lt;a href=&quot;https://kefir.red&quot;&gt;ecosistemas digitales&lt;/a&gt;
y en esa línea tal vez ya no importe tanto si estamos en Internet, la
Internet hegemónica con cables interoceánicos y &lt;em&gt;datacenters&lt;/em&gt; gigantes
y servidores encendidos 24/7, sino también en y desde las redes
comunitarias.&lt;/p&gt;
&lt;p&gt;Pero también tenemos que darnos una crítica radical de lo que significan
los servicios en Internet, empezando por dejar de llamarlos servicios
y continuando con desarmar los paradigmas y analogías capitalistas que
se cuelan en el discurso de los espacios autónomos. Cuando hablamos de
&lt;em&gt;contenedorización&lt;/em&gt;, estamos haciendo referencia al proceso de
tercerizar la explotación allá por donde no se la ve. Más aún cuando
nos dicen que hay que empezar a tratar a lxs servidorxs esas
computadoras que viven en la Internet y que se encargan de que el correo
y la web y tantas otras cosas sucedan como si fueran ganado y que ya
no importa cuáles son individuadas, sino cuántas tenemos y si están
cumpliendo su función.&lt;/p&gt;
&lt;p&gt;Esto que parece una analogía horrible a quien viva en un país ganadero
y tenga alguna simpatía por la liberación animal o se reconozca
anti-especista, adquiere un nivel extra de espanto, ya que se evidencia
la intencionalidad de negarnos la posibilidad de establecer otras formas
de relacionarnos con las tecnologías y sus dispositivxs, lo mismo que
con otres animales, ya no como cosas que cumplen una funcionalidad para
nosotres (nos dan un servicio o se pudre todo si no lo dan), sino desde
los afectos, nosotres queremos hacer el amor con los drones decían por
ahí&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn1&quot; id=&quot;fnref1&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;, pero no sólo eso, sino desde lo doméstico, lo
cotidiano…&lt;/p&gt;
&lt;p&gt;Esto implica romper con un montón de mecanismos que vienen de la jerga
y las prácticas hegemónicas y que parten de la invisibilización de la
relación administrador-administrades que se cuaja en la figura del
cisadmin&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn2&quot; id=&quot;fnref2&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; que odia a les usuaries, porque hacen que todo deje
de funcionar, porque no saben, porque al estar a su vez invisibilizado
por la necesidad de que todo funcione sin explicitar cómo, solo recibe
insultos cuando las cosas precisamente “no funcionan”.&lt;/p&gt;
&lt;p&gt;Y para romper con eso tenemos que pensar en que las cosas no tienen que
funcionar todo el tiempo, que las máquinas también quieren siesta
y quieren ser libres y que a las infraestructuras, de la forma que sean,
las construimos entre todes y que esa relación es recíproca, a su vez
nos construyen. Eso es algo que tenemos que aprender las
infraestructuras autónomas de las redes comunitarias, porque aunque no
queramos, rápidamente caemos en la tensión de que las cosas funcionen,
sin tiempo para que se sepa cómo ni por qué. No digo que las redes
comunitarias no funcionen o lo hagan intermitentemente, sino a que
tenemos que aprender que las infraestructuras no tienen que ser solo
autónomas y también pensarse comunitarias, para desdibujar la relación
administrador-administrades y pararnos desde otras formas de
administrar. Así de primera mano, colectivizar los conocimientos
técnicos, traer las prácticas auto y co-gestivas al ciberespacio.&lt;/p&gt;
&lt;p&gt;A la vez, tenemos que dejar de correr a la zaga de los servicios
capitalistas (tengo esta discusión cada vez que alguien pide una
alternativa libre a Google Docs, que inevitablemente quedará corta
y todo el mundo odiará, cuando tenemos Etherpad, que es tan
placenteramente minimalista y no cuelga computadoras) y aceptar que
nunca les vamos a alcanzar, porque estamos haciendo otras cosas. No
vamos a ser lo mismo pero libre, pero autónomo, porque eso implica jugar
bajo lógicas que nos transforman en el capitalismo heteropatriarcal,
aunque buena onda.&lt;/p&gt;
&lt;p&gt;No es que lo técnico es neutro, permanece igual pero cambian las manos
que lo guían y los nombres que les damos. Necesitamos construir la
alternativa libre pensando en prácticas libres. Y esto implica
cuestionarnos sobre qué tipos de prácticas nos hacen libres.&lt;/p&gt;
&lt;p&gt;Tenemos que pensar desde otras analogías, tenemos que pensar qué
analogías serán las nuestras y bajo y con cuales construimos a nuestras
amigas las tecnologías y nos construyan a nosotres también.&lt;/p&gt;
&lt;p&gt;Para rescatar algo de las infraestructuras autónomas como aporte a las
redes comunitarias, es que las primeras tienen una fuerte experiencia en
el anonimato y la privacidad, porque la resistencia que hacemos todos
los días es al proceso de apropiación del trabajo cognitivo, que se
traduce en &lt;em&gt;tracking&lt;/em&gt;, en publicidad y en Internet no como un
ciberespacio independiente, sino como un territorio hostil (como los
espacios públicos, según el discurso de la seguridad).&lt;/p&gt;
&lt;p&gt;Ahí laburamos desde la autodefensa digital, porque se trata de resistir.
(Acá se me ocurre una analogía entre infraestructuras autónomas versus
redes comunitarias y resistencias versus autonomismos.) Sin embargo
entiendo que son pocas las redes comunitarias que están implementando
cifrado en las conexiones (y de hecho no se me ocurre ninguna, espero
que por ignorancia), que es el nivel más bajo y más efectivo donde
podemos asegurar la inviolabilidad de las comunicaciones.&lt;/p&gt;
&lt;p&gt;Pensemos que todo lo que viene después en cuanto a cifrado de protocolos
de comunicación (HTTPS para la web, GPG para el correo, etc.) es tan
solo un parche horrible, porque todo lo que tuvo que ver con cifrar las
comunicaciones a nivel de IP fue tergiversado, complejizado y expelido a
otros estándares de forma que nadie lo quiere implementar, incluyendo
las redes comunitarias.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn3&quot; id=&quot;fnref3&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;p&gt;Solo nos hace falta un certificado y una dirección IPv6 para reclamar el
ciberespacio como nuestro y distribuido, decían Kleiner&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn4&quot; id=&quot;fnref4&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;
y Roca&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn5&quot; id=&quot;fnref5&quot;&gt;5&lt;/a&gt;&lt;/sup&gt; por separado. En términos más políticos que técnicos,
esto permitiría que todas las computadoras se conecten al ciberespacio
en pie de igualdad con cualquier otra computadora al tiempo que las
comunicaciones que transmitan entre sí no puedan ser interceptadas por
ninguna tercera. A cada quien según su necesidad, de cada quien según
su capacidad, en un comunismo &lt;em&gt;kinky cyborg&lt;/em&gt; donde los roles
servidore-clientx se intercambian permanentemente o de forma menos
&lt;em&gt;kinky&lt;/em&gt;, en una red que quisiéramos compuesta de nodxs en lugar de
jerarquías inamovibles y para eso también necesitamos &lt;em&gt;otros ISP&lt;/em&gt;
y &lt;em&gt;otros anchos de banda&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;El abordaje que se plantea desde las tecnologías distribuidas parece el
adecuado. La onda es que en lugar de reproducir en chiquito la
centralización (en servidorxs físicxs de distintas escalas, pero
servidorxs al fin), la distribución asegura que la información circula
y reside desde múltiples puntos, que pueden ser intermitentes
individualmente, pero que colectivamente habilitan mayor permanencia.
Habiendo sufrido la desaparición de la memoria colectiva pirata&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn6&quot; id=&quot;fnref6&quot;&gt;6&lt;/a&gt;&lt;/sup&gt;
por la centralización en una sola computadora, resulta una estrategia
válida.&lt;/p&gt;
&lt;p&gt;Pero también me parece interesante un proceso de reapropiación y
resignificación de tecnologías que asumimos como centralizadas y que nos
podemos plantear como juego exploratorio y no como otro problema a
resolver. Pienso en el correo electrónico, que ahora tiene encima un
montón de parches hechos a medida de las necesidades de los grandes
proveedores, pero que en sus elementos básicos se trata de un sistema de
comunicación entre dispositivxs intermitentemente conectadxs (no me voy
a extender porque ya hice apología de esto en varios lados&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn7&quot; id=&quot;fnref7&quot;&gt;7&lt;/a&gt;&lt;/sup&gt;). No
hay que subestimar el ancho de banda de une compañere cargando DVDs en
la mochila (¡une tecno-chaski!) ni el de un cable de red cuando la wifi
se encula.&lt;/p&gt;
&lt;p&gt;Hace un tiempo nos preguntábamos cómo sería una &lt;a href=&quot;hipotesis-sobre-la-criptografia/&quot;&gt;criptografía
feminista&lt;/a&gt;, pero no para resolver el
problema, sino para manifestar que hasta las técnicas más
pretendidamente neutras incorporan la política de otros. ¿Cuándo van
a tener la nuestra?&lt;/p&gt;
&lt;p&gt;El chiste de que les programadorxs somos como plomeres es porque nunca
nos gusta lo que hizo le anterior. También en esta analogía hay algo de
poético, de estilos propios de abordar los desafíos técnicos frente a la
(pre)potencia productiva de la taylorización/contenedorización.&lt;/p&gt;
&lt;p&gt;Se me ocurren un montón de lecturas para recomendar, algunas propias
otras apropiadas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://fauno.endefensadelsl.org/Quer%C3%ADamos-libertad-en-la-nube-y-lo-%C3%BAnico-que-conseguimos-fue-una-web-m%C3%A1s-compleja/&quot;&gt;Queríamos libertad en la nube y lo único que conseguimos fue una web
más
compleja&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://fauno.endefensadelsl.org/necesitamos-interfaces-que-nos-hagan-libres/&quot;&gt;Necesitamos interfaces que nos hagan
libres&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://fauno.endefensadelsl.org/nuestra_internet_es_de_jardines_inconexos/&quot;&gt;Nuestra Internet es de jardines
inconexos&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://utopia.partidopirata.com.ar/sobre_los_autos_voladores_y_la_tasa_decreciente_de_ganancia.html&quot;&gt;Sobre los autos voladores y la tasa decreciente de
ganancia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://endefensadelsl.org/usuaria_turing_completa.html&quot;&gt;Usuaria Turing
Completa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://endefensadelsl.org/el_software-martillo.html&quot;&gt;El
Software-martillo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=v-XS4aueDUg&quot;&gt;Desobediencia
tecnológica&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.eldiario.es/interferencias/Curzio_Malaparte-Comite_Invisible_6_447315274.html&quot;&gt;La revolución como problema
técnico&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://transfeminismos.wordpress.com/prologo/&quot;&gt;Decimos revolución&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;section class=&quot;footnotes&quot;&gt;
&lt;ol&gt;
&lt;li id=&quot;fn1&quot;&gt;
&lt;p&gt;&lt;a href=&quot;https://transfeminismos.wordpress.com/prologo/&quot;&gt;Decimos
revolución&lt;/a&gt; &lt;a href=&quot;#fnref1&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn2&quot;&gt;
&lt;p&gt;Digo cisadmin y no sysadmin para denotar no solo que es una
labor generizada, con una figura mítica fuertemente hosca y masculina
sino también autoritaria y violenta y que a partir de ahí podamos
pensar otras formas de &lt;em&gt;administrar&lt;/em&gt;. &lt;a href=&quot;#fnref2&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn3&quot;&gt;
&lt;p&gt;Al parecer, &lt;a href=&quot;www.mail-archive.com/cryptography@metzdowd.com/msg12325.html&quot;&gt;cuentan lxs abuelxs de
Internet&lt;/a&gt;,
cuando quisieron incorporar cifrado punto a punto en el protocolo
mismo de Internet, la NSA se preocupó mucho y logró desbarrancar ese
esfuerzo promoviendo la creación de un estándar separado que se llama
IPSec. &lt;a href=&quot;#fnref3&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn4&quot;&gt;
&lt;p&gt;&lt;a href=&quot;https://blog.p2pfoundation.net/dmytri-kleiner-on-the-need-for-ipv6/2014/05/07&quot;&gt;Dmytri Kleiner on the need for
IPV6&lt;/a&gt; &lt;a href=&quot;#fnref4&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn5&quot;&gt;
&lt;p&gt;No encontré la referencia… &lt;a href=&quot;#fnref5&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn6&quot;&gt;
&lt;p&gt;&lt;a href=&quot;https://partidopirata.com.ar/2018/09/01/solidaridad-pirata/&quot;&gt;Comunicado y llamado a la solidaridad pirata para este
domingo&lt;/a&gt; &lt;a href=&quot;#fnref6&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn7&quot;&gt;
&lt;p&gt;&lt;a href=&quot;https://fauno.endefensadelsl.org/Quer%C3%ADamos-libertad-en-la-nube-y-lo-%C3%BAnico-que-conseguimos-fue-una-web-m%C3%A1s-compleja/&quot;&gt;Queríamos libertad en la nube y lo único que conseguimos fue
una web más
compleja&lt;/a&gt; &lt;a href=&quot;#fnref7&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/section&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Gracias a alf por la lectura y los aportes :)</summary></entry><entry><title type="html">Nuestra Internet es de jardines inconexos</title><link href="https://fauno.endefensadelsl.org//nuestra_internet_es_de_jardines_inconexos/" rel="alternate" type="text/html" title="Nuestra Internet es de jardines inconexos" /><published>2017-07-16T00:00:00-03:00</published><updated>2017-07-16T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//nuestra_internet_es_de_jardines_inconexos</id><content type="html" xml:base="https://fauno.endefensadelsl.org//nuestra_internet_es_de_jardines_inconexos/">&lt;p&gt;Al final &lt;a href=&quot;https://whispersystems.org/blog/the-ecosystem-is-moving/&quot;&gt;m0xie es un
agreta&lt;/a&gt; pero
tenía razón. No necesitamos servicios federados. Pero tampoco
necesitamos servicios centralizados. Lo que necesitamos son servicios
distribuidos. Comprometernos con lo &lt;em&gt;tecnohippie&lt;/em&gt; y aplicar lo pequeño
y local es hermoso.&lt;/p&gt;
&lt;p&gt;No necesitamos la próxima plataforma siempre funcional, nunca apagada,
donde subjetivarnos como una única persona pero con distintos niveles de
afectos.&lt;/p&gt;
&lt;p&gt;Elegir a cuáles de nuestros círculos mostrarles un &lt;em&gt;post&lt;/em&gt; pero hacerlo
aun desde una única plataforma que sabe cuáles son nuestros círculos no
es federación. El problema era otro.&lt;/p&gt;
&lt;p&gt;No necesitamos implementar las &lt;em&gt;features&lt;/em&gt; de &lt;em&gt;Facebook&lt;/em&gt;, necesitamos
implementar &lt;em&gt;features&lt;/em&gt; que &lt;em&gt;Facebook&lt;/em&gt; nunca implementaría y que no pasan
por la simple federación. Cuando &lt;em&gt;Diáspora&lt;/em&gt; puso la opción de publicar
en sólo algunos niveles de contactos, &lt;em&gt;Facebook&lt;/em&gt; la siguió inmediamente.
Tienen más programadoras y financiamiento infinito. No solo estamos
corriendo la coneja, sino que nos puede pasar por varias vueltas. Pero
&lt;em&gt;Facebook&lt;/em&gt; nunca nos va a dejar organizarnos con nuestras compañeras,
por mucho que le pese al &lt;em&gt;marketing&lt;/em&gt; primaveral.&lt;/p&gt;
&lt;p&gt;Lo que necesitamos es multiplicidad de canales de comunicación,
pequeños, distribuidos, inconexos. Donde en un canal sos una persona y
en el otro sos un perro.&lt;/p&gt;
&lt;p&gt;Lo importante es lo inconexo. La federación como paradigma técnico
intenta &lt;em&gt;solucionar&lt;/em&gt; el problema de los “jardines cerrados”. Pero
ninguno de las plataformas de apropiación de trabajo cognitivo a las que
resisten las plataformas federadas entra ya dentro de esta métafora.
Más bien son estados-nación, vastas ciudades donde las fronteras son
impensables.&lt;/p&gt;
&lt;p&gt;Tenemos que recuperar la noción de jardín para nosotras. El problema a
resolver ya está resuelto. Sigamos a m0xie cuando dice que la
federación nos retrasa y dejemos de luchar contra un monoprotocolo que
no se presta a la federación.&lt;/p&gt;
&lt;p&gt;Lo que necesitamos es montar pequeños jardines, servir la mesa, invitar
a nuestros afectos, festejar las dimensiones.&lt;/p&gt;
&lt;p&gt;En lo técnico, se trata de levantar lo más pequeño y adhoc que tengamos
a mano. Tilde clubs, servidores de IRC, en servicios ocultos de Tor,
incluso Diáspora, o Mastodon, o lo que sea. Pero no preocuparse si no
federa o si no funciona dentro del paradigma 24/7.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Software&lt;/em&gt; que pueda sostener en una sola interfaz la multiplicidad de
servicios inconexos a los que accedemos ya existe. Pienso en pidgin,
thunderbird o cualquier cliente multi-protocolo multi-cuenta que exista.
Su nombre ya lo indicaba, lo que teníamos que seguir eran sus vectores.&lt;/p&gt;
&lt;p&gt;Se trata también de una táctica de auto-cuidado. No por ser libres esas
plataformas van a dejar de tener nuestras agendas completas, qué nos
gusta y qué nos disgusta al alcance de una vulnerabilidad lógica, legal,
física.&lt;/p&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Al final m0xie es un agreta pero tenía razón. No necesitamos servicios federados. Pero tampoco necesitamos servicios centralizados. Lo que necesitamos son servicios distribuidos. Comprometernos con lo tecnohippie y aplicar lo pequeño y local es hermoso.</summary></entry><entry><title type="html">Somos las trabajadoras de la Web</title><link href="https://fauno.endefensadelsl.org//somos-las-trabajadoras-de-la-web/" rel="alternate" type="text/html" title="Somos las trabajadoras de la Web" /><published>2015-08-19T00:00:00-03:00</published><updated>2015-08-19T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//somos-las-trabajadoras-de-la-web</id><content type="html" xml:base="https://fauno.endefensadelsl.org//somos-las-trabajadoras-de-la-web/">&lt;p&gt;Tenemos que dejar de pensar que la cuestión de Internet pasa por la
privacidad individual, de que es una cuestión de conciencia, cambiar
de prácticas, conocer los peligros.&lt;/p&gt;
&lt;p&gt;El único papel que nos queda si seguimos discutiendo en estos términos
es el de ser objetoras de conciencia digitales, mirando con horror cómo
todo se va al carajo, juntando anécdotas para convencer a la multitud
apática.&lt;/p&gt;
&lt;p&gt;Somos las trabajadoras de la Web.&lt;/p&gt;
&lt;p&gt;Tenemos que asumir que al usar Facebook, Google, Twitter&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn1&quot; id=&quot;fnref1&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; y cualquier
otra plataforma, no nos están dando nada gratis, pero tampoco nos
estamos dando gratis nosotras a cambio. Lo que estamos haciendo es
trabajando.&lt;/p&gt;
&lt;p&gt;Las plataformas son la fábrica cognitiva, los muros son su línea de
producción, la usabilidad es el taylorismo. La fuerza de trabajo es el
ocio.&lt;/p&gt;
&lt;p&gt;Y recién ahí entra la privacidad, en tanto mercancía, no como moneda de
pago por un servicio. Facebook no nos puede pagar un salario con
unidades de privacidad.&lt;/p&gt;
&lt;p&gt;Entonces si vamos a reclamar, la consigna será que nos paguen por cada
cosa que compartamos y búsqueda que hagamos. Si vamos a luchar, será
por la auto-organización de las redes, ¡por el tiempo libre!&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;em&gt;&lt;a href=&quot;http://www.newyorker.com/business/currency/facebook-should-pay-all-of-us&quot;&gt;Facebook should pay all of
us&lt;/a&gt;&lt;/em&gt;
tiene una conclusión similar, aunque las premisas son totalmente
distintas.&lt;/p&gt;
&lt;p&gt;Si no recuerdo mal, Christian Fuchs propone en la &lt;a href=&quot;http://immateriallaborunion.net/&quot;&gt;Immaterial Labour
Union&lt;/a&gt; [Sindicato del Trabajo
Inmaterial] que estas empresas sean las que financien la renta
básica universal.&lt;/p&gt;
&lt;section class=&quot;footnotes&quot;&gt;
&lt;ol&gt;
&lt;li id=&quot;fn1&quot;&gt;
&lt;p&gt;Nunca se menciona a Twitter entre los recolectores de información. &lt;a href=&quot;#fnref1&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/section&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Tenemos que dejar de pensar que la cuestión de Internet pasa por la privacidad individual, de que es una cuestión de conciencia, cambiar de prácticas, conocer los peligros.</summary></entry><entry><title type="html">Queríamos libertad en la nube y lo único que conseguimos fue una web más compleja</title><link href="https://fauno.endefensadelsl.org//Quer%C3%ADamos-libertad-en-la-nube-y-lo-%C3%BAnico-que-conseguimos-fue-una-web-m%C3%A1s-compleja/" rel="alternate" type="text/html" title="Queríamos libertad en la nube y lo único que conseguimos fue una web más compleja" /><published>2015-08-16T00:00:00-03:00</published><updated>2015-08-16T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//Quer%C3%ADamos-libertad-en-la-nube-y-lo-%C3%BAnico-que-conseguimos-fue-una-web-m%C3%A1s-compleja</id><content type="html" xml:base="https://fauno.endefensadelsl.org//Quer%C3%ADamos-libertad-en-la-nube-y-lo-%C3%BAnico-que-conseguimos-fue-una-web-m%C3%A1s-compleja/">&lt;p&gt;Pasaron más de cinco años desde que Eben Moglen, antes de Assange,
Manning y Snowden, hablara de &lt;a href=&quot;http://endefensadelsl.org/libertad_en_la_nube.html&quot;&gt;libertad en la
nube&lt;/a&gt; y cómo la
vigilancia está imbuida en Internet, pero más específicamente en un
protocolo cliente-servidor que se llama HTTP y es la base de la Web.&lt;/p&gt;
&lt;p&gt;Pero la Web no es decentralizada, sino que es una arquitectura de red
donde algunos tienen la información, en forma de páginas web y otros la
descargan. La relación siempre es asimétrica. El que consume comparte
información, pero no corre la aplicación. Cliente y servidor no son
iguales cuando solo el último determina qué se puede hacer y qué no en
esa comunicación.&lt;/p&gt;
&lt;p&gt;En esa charla, Moglen fue muy claro en los objetivos que teníamos que
cumplir para lograr la libertad en la red. Uno de ellos era tener los
servidores en nuestras casas. Basta de delegarle la conversación a
terceros impersonales, corporativos.&lt;/p&gt;
&lt;p&gt;También fue muy claro en otra cosa, que fue olvidada rápidamente porque
no solo somos libertarios moglenianos, sino también liberales de
silicona.&lt;/p&gt;
&lt;p&gt;Lo que dijo fue que el software ya existía. Ya existía el software para
los servidores de correo, el de los servidores web, el software para
armar redes libres, distribuidas, resilientes. Cosas que funcionan hace
40 años y no se caen aunque las cagues a patadas.&lt;/p&gt;
&lt;p&gt;Pero pasaron 5 años y no paro de ver proyectos que quieren reinventar
esa indestructibilidad revolucionaria en el protocolo que menos se
presta para ello: HTTP.&lt;/p&gt;
&lt;h1&gt;Post-scriptum&lt;/h1&gt;
&lt;p&gt;Mientras otros prometían que ibas a tener el correo en tu casa, pero
empezaron por reinventar el webmail, en LibreVPN&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn1&quot; id=&quot;fnref1&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; hicimos el
esfuerzo más modesto de tomar software de correo que ya existía, llamado
postfix, y configurarlo para que envíe correo entre máquinas de la misma
red y también hacia Internet, delegando esa capacidad a un tercero bobo
cuando fuera necesario.&lt;/p&gt;
&lt;p&gt;Esto quiero decir que estando en una computadora, llamada &lt;code&gt;urras&lt;/code&gt;,
usando el usuario &lt;code&gt;shevek&lt;/code&gt;, podemos escribirle a &lt;code&gt;takver&lt;/code&gt; en la
computadora &lt;code&gt;anarres&lt;/code&gt; y ese correo saldrá directamente de &lt;code&gt;anarres&lt;/code&gt; a
&lt;code&gt;urras&lt;/code&gt; sin pasar por ningún otro intermediario antes. En correo
electrónico, esto se expresa como &lt;code&gt;shevek@urras&lt;/code&gt; le escribe a
&lt;code&gt;takver@anarres&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Resulta que el protocolo que administra el correo, SMTP, fue diseñado
para hacer esto mismo, escribir correos de máquina a máquina, hace 30
años y solo hicieron falta tres cambios en el archivo de configuración
por defecto y un transporte sin intermediarios observando y bloqueando.&lt;/p&gt;
&lt;p&gt;Pero quién te quita el &lt;em&gt;crowdfunding&lt;/em&gt; y la experiencia de reinventar la
rueda, ¿no?&lt;/p&gt;
&lt;section class=&quot;footnotes&quot;&gt;
&lt;ol&gt;
&lt;li id=&quot;fn1&quot;&gt;
&lt;p&gt;Que derivó en la &lt;a href=&quot;https://0xacab.org/pip/rap/&quot;&gt;Red Autónoma
Pirata&lt;/a&gt; &lt;a href=&quot;#fnref1&quot; class=&quot;footnote-backref&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/section&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">Pasaron más de cinco años desde que Eben Moglen, antes de Assange, Manning y Snowden, hablara de libertad en la nube y cómo la vigilancia está imbuida en Internet, pero más específicamente en un protocolo cliente-servidor que se llama HTTP y es la base de la Web.</summary></entry><entry><title type="html">El problema no es la toma de decisiones</title><link href="https://fauno.endefensadelsl.org//el_problema_no_es_la_toma_de_decisiones/" rel="alternate" type="text/html" title="El problema no es la toma de decisiones" /><published>2015-08-15T00:00:00-03:00</published><updated>2015-08-15T00:00:00-03:00</updated><id>https://fauno.endefensadelsl.org//el_problema_no_es_la_toma_de_decisiones</id><content type="html" xml:base="https://fauno.endefensadelsl.org//el_problema_no_es_la_toma_de_decisiones/">&lt;p&gt;El problema no es la toma de decisiones. Puede ser la representación,
pero la representación tiene dos caras. Por un lado nos quita la
capacidad de decidir sobre el gobierno de nuestras vidas y se las
entrega a una elite de burócratas profesionales. Cualquier protocolo de
toma de decisiones tiene el mismo problema. Mientras más reglas y
procedimientos un protocolo tenga, más y más va a quedar en las manos de
aquellos que se tomaron el tiempo y tuvieron el capital (económico,
social) para comprenderlo y explotarlo.&lt;/p&gt;
&lt;p&gt;Por eso es que los protocolos de toma de decisiones no tienen que ser
más dinámicos y eficientes (líquidos), sino más simples.&lt;/p&gt;
&lt;p&gt;Pero el problema no pasa por transformar la toma de decisiones, si nos
olvidamos de la otra cara de la representación.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;¿No puede hacerlo otro?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;El problema es la acción. No sirve de nada tomar decisiones, si
inmediatamente no viene acompañada de una acción, si nadie se hace
responsable de hacerla, si aquellos que toman la decisión no la llevan a
cabo, si la energía colectiva se esfumó antes de tiempo.&lt;/p&gt;
&lt;p&gt;Esto es lo otro que nos quita la representación.&lt;/p&gt;</content><author><name>[&quot;fauno&quot;]</name></author><summary type="html">El problema no es la toma de decisiones. Puede ser la representación, pero la representación tiene dos caras. Por un lado nos quita la capacidad de decidir sobre el gobierno de nuestras vidas y se las entrega a una elite de burócratas profesionales. Cualquier protocolo de toma de decisiones tiene el mismo problema. Mientras más reglas y procedimientos un protocolo tenga, más y más va a quedar en las manos de aquellos que se tomaron el tiempo y tuvieron el capital (económico, social) para comprenderlo y explotarlo.</summary></entry></feed>

3
cached-feeds/readme.md Normal file
View file

@ -0,0 +1,3 @@
Estos son feeds de mis amigxs usados para el webring que cacheo en la repo para que se pueda compilar offline.
Se refresca con `./tool refresh_feeds`.

View file

@ -66,10 +66,20 @@ async function scanForConnections(sourcePath: string) {
return connections;
}
function hackilyTransformHtml(html: string) {
return html
async function hackilyTransformHtml(html: string): Promise<string> {
html = html
.replaceAll("<a h", '<a rel="noopener noreferrer" h')
.replaceAll(wikilinkExp, `<a href="$1.html">$1</a>`);
for (const [match, archivo] of html.matchAll(
/<nulo-sitio-reemplazar-con archivo="(.+?)" \/>/g
)) {
if (!promises[archivo])
throw new Error(
`<nulo-sitio-reemplazar-con archivo="${archivo}" /> no existe!`
);
html = html.replace(match, await promises[archivo]);
}
return html;
}
const connections = await scanForConnections(config.sourcePath);
@ -78,16 +88,16 @@ await mkdir(config.buildPath, { recursive: true });
const dir = await opendir(config.sourcePath);
let pageList: string[] = [];
let promises = [];
let promises: { [key: string]: Promise<string> } = {};
for await (const entry of dir) {
if (!entry.isFile()) continue;
promises.push(compileFile(entry.name));
promises[entry.name] = compileFile(entry.name);
}
await Promise.all(promises);
await Promise.all(Object.values(promises));
await compilePageList(config, pageList);
async function compileFile(name: string) {
async function compileFile(name: string): Promise<string> {
const extension = extname(name);
if (
[".js", ".md", ".css", ".png", ".jpg", ".mp4", ".svg", ".html"].includes(
@ -100,8 +110,9 @@ async function compileFile(name: string) {
pageList.push(basename(name, extension));
}
if (extension === ".md") await compileMarkdown(config, name);
else if (extension === ".gen") await compileExecutable(config, name);
if (extension === ".md") return await compileMarkdown(config, name);
else if (extension === ".gen") return await compileExecutable(config, name);
return "";
}
async function compilePageList(config: Config, pageList: string[]) {
@ -118,7 +129,10 @@ async function compilePageList(config: Config, pageList: string[]) {
`;
await writeFile(outputPath, html);
}
async function compileMarkdown(config: Config, sourceFileName: string) {
async function compileMarkdown(
config: Config,
sourceFileName: string
): Promise<string> {
const name = basename(sourceFileName, ".md");
const markdown = await readFile(
join(config.sourcePath, sourceFileName),
@ -130,10 +144,11 @@ async function compileMarkdown(config: Config, sourceFileName: string) {
const isIndex = sourceFileName === "index.md";
const title = isIndex ? "nulo.in" : name;
const contentHtml = await hackilyTransformHtml(markdownHtml);
const html =
head(title, sourceFileName) +
(isIndex ? "" : header(title, sourceFileName, fileConnections.length > 0)) +
hackilyTransformHtml(markdownHtml) +
contentHtml +
(fileConnections.length > 0
? `
<section id=conexiones>
@ -151,9 +166,13 @@ async function compileMarkdown(config: Config, sourceFileName: string) {
basename(sourceFileName, ".md") + ".html"
);
await writeFile(outputPath, html);
return contentHtml;
}
async function compileExecutable(config: Config, sourceFileName: string) {
async function compileExecutable(
config: Config,
sourceFileName: string
): Promise<string> {
const name = basename(sourceFileName, ".gen");
const { stdout, stderr } = await execFile(
@ -168,6 +187,7 @@ async function compileExecutable(config: Config, sourceFileName: string) {
basename(sourceFileName, ".gen") + ".html"
);
await writeFile(outputPath, html);
return stdout;
}
// ==============================================

View file

@ -1,5 +1,6 @@
:root {
--background: white;
--backgroundish: #f0f0f0;
--foreground: #111;
}
@ -68,6 +69,7 @@ a {
@media (prefers-color-scheme: dark) {
body {
--background: black;
--backgroundish: #111;
--foreground: #eee;
}
abbr {
@ -90,3 +92,28 @@ a {
#conexiones li::before {
content: "↜ ";
}
.webring .articles {
display: flex;
flex-wrap: wrap;
}
.webring .title {
margin: 0;
}
.webring .article {
flex: 1 1 0;
display: flex;
flex-direction: column;
margin: 0.5rem;
padding: 0.5rem;
background: var(--backgroundish);
min-width: 10rem;
}
.webring .summary {
font-size: 0.8rem;
flex: 1 1 0;
}
.webring .attribution {
text-align: right;
font-size: 0.8rem;
}

View file

@ -12,11 +12,9 @@ Algunas cosas que escribí recientemente:
A veces hago [[Proyectos]].
## Amigxs
## Mis amigxs ([[Mi webring]])
- [Copiona](https://copiona.com) de librenauta
- [Bajada de línea](https://fauno.endefensadelsl.org/) de fauno
- ¿Me olvidé de vos o tenés un proyecto nuevo? ¡Contactame!
<nulo-sitio-reemplazar-con archivo="Mi webring.gen" />
## Contacto

10
tool
View file

@ -10,11 +10,19 @@ build() {
check() {
./node_modules/.bin/tsc --noEmit
}
refresh_feeds() {
wget -nv -O cached-feeds/fauno.xml https://fauno.endefensadelsl.org/feed.xml
wget -nv -O cached-feeds/copiona.xml https://copiona.com/feed.xml
}
fatal() {
echo "$1"
exit 1
}
test "$1" = build_ts -o "$1" = build -o "$1" = check || fatal "Comando no válido"
test "$1" = build_ts \
-o "$1" = build \
-o "$1" = check \
-o "$1" = refresh_feeds \
|| fatal "Comando no válido"
"$1"