Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(activism#references): add 38c3 talk on state of surveillance
[38C3 Talk: State of Surveillance: A year of digital threats to civil society](https://media.ccc.de/v/38c3-state-of-surveillance-a-year-of-digital-threats-to-civil-society) feat(ai#AI and ecologism): Add 38C3 talk on AI and ecologism [38C3 talk: Resource Consumption of AI - Degrow or Die](https://media.ccc.de/v/38c3-resource-consumption-of-ai-degrow-or-die) feat(anarchism#Anarchism in Belarus): Anarchism in Belarus - [Anarchist black cross Belarus](https://abc-belarus.org/en/main-page/) - [Bad immigrant bluesky](https://bsky.app/profile/bad-immigrant.bsky.social) - [Pramen website](https://pramen.io/en/) - [Pramen videos](https://kolektiva.media/c/pramenby/videos?s=1) feat(argocd#Difference between sync and refresh): Difference between sync and refresh - Sync: Reconciles the current cluster state with the target state in git. - Refresh: Fetches the latest manifests from git and compares the diff with the live state. - Hard Refresh: Clears any caches and does a refresh. For more information read [1](https://argo-cd.readthedocs.io/en/stable/core_concepts/), [2](https://github.com/argoproj/argo-cd/discussions/8260), [3](https://github.com/argoproj/argo-cd/discussions/12237) fix(beancount#Writing an importer): Writing an importer NOTE: since 3.0.0 the importers need to be done with [`beangulp`](https://github.com/beancount/beangulp?tab=readme-ov-file). I've tried using it but found it confusing so I fell back to 2.x e Check a list of already existing importers [here](https://tariochbctools.readthedocs.io/en/latest/importers.html#) Once you have your importer built up you might want to spice it up with [smart_importer](https://github.com/beancount/smart_importer/?tab=readme-ov-file) feat(books#Mejores libros del 2024): Mejores libros del 2024 2024 ha sido un año muy potente para mi en cuanto a lectura se refiere, La mayor parte de los 23 libros que me he terminado han tenido buena puntuación. 5: 8 4: 7 3: 6 2: 1 1: 1 6 se han quedado por el camino y sólamente recuerdo uno que se me haya hecho pesado de leer y me he forzado a terminar de leerlo. **Política** **[The global police state by William I. Robinson](https://www.todostuslibros.com/libros/mano-dura_978-84-19158-52-9#synopsis)** William ha puesto palabras bonitas y claras a mis pensamientos como no lo hacia un libro desde el manifiesto comunista hace muchos años. Un análisis impoluto sobre la crisis del capitalismo y el mundo al que nos estamos dirigiendo. A la vez que dando una dirección a la que apuntar para combatirlo. Ambiciosa y difícil, pero la que más me cuadra. Me encantaría debatirlo con la gente y lo regalaré allá donde vaya. Da un poco de yuyu porque hasta el final final final no da atisbo de luz al final del túnel tan necesaria en estos tiempos oscuros, pero aguantad, que merece la pena (✿◠‿◠). ![cover](the_global_police_state.webp) A muchos nos aterra el nuevo auge del fascismo. Solo en Europa, la extrema derecha integra cinco gobiernos y tiene representación parlamentaria destacada en veintisiete países. Pero esto es apenas la punta del iceberg de un proceso bastante más complejo: el auge del Estado policial global como respuesta a la profunda crisis del sistema capitalista actual. A medida que el neoliberalismo dispara las desigualdades hasta límites insospechados (los veintiséis millonarios más importantes del mundo poseen hoy más de la mitad de la riqueza mundial mientras dos mil millones de personas viven en situación de pobreza), los individuos se vuelven «desechables». Una población excedente que supone una amenaza de rebelión para la clase capitalista. Para refrenarla, se hacen ubicuos todo tipo de sistemas de control, rastreos biométricos, encarcelamientos generalizados, barcos‐prisión, violencia policial, persecución de migrantes, represión contra activistas medioambientales, eliminación de prestaciones sociales, desahucios, precarización de las clases medias, guerras estratégicas sustentadas por capital privado... Así, el Estado policial global no remite ya a un mecanismo policial y militar, sino a la propia economía global como totalidad represiva, cuya lógica es tan mercantil como política y cultural. Y, mientras la codicia infinita de la clase dominante hunde al capitalismo en una crisis sin precedentes (llevando la degradación ecológica y el deterioro social a su límite absoluto), el neofascismo afianza su posición en ese Estado policial global cuyo objetivo es la exclusión coercitiva de la humanidad excedente. Basándose en datos estremecedores y argumentos incontrovertibles, William I. Robinson demuestra hasta qué punto el capitalismo del siglo XXI se ha convertido en un sistema absoluto de represión como único método para mantenerse en pie más allá de sus contradicciones terminales, y defiende la urgencia de crear un movimiento que trascienda los meros llamados a la justicia social y ataque a la yugular. **[Joyful militancy by carla bergman and Nick Montgomery](https://joyfulmilitancy.com/)** Un libro muy interesante desde todas las perspectivas. Por cómo debió de ser el proceso creativo, por el cuidado y respeto a todos los distintos movimientos que representa, por las personas entrevistadas y las ideas que transmiten... Para mi ha sido un libro clave para una de las transformaciones más importantes de concepto de vida que he dado este año, entrar más en contacto con mi deseo y dejar que este fluya sobre las rigideces autoimpuestas entre otras cosas por el concepto del deber. Esto aplicado a mi vida en general y a mi militancia en particular. Es cierto que la mayor parte de los conceptos transgresores son heredados del feminismo, pero el libro los refleja muy bien y puede ser un buen punto de entrada para los que no nos hemos zambullido aún muy profundamente en leer teoría feminista. ![cover](joyful.webp) Why do radical movements and spaces sometimes feel laden with fear, anxiety, suspicion, self-righteousness and competition? The authors call this phenomenon rigid radicalism: congealed and toxic ways of relating that have seeped into radical movements, posing as the ‘correct’ way of being radical. In conversation with organizers and intellectuals from a wide variety of currents, the authors explore how rigid radicalism smuggles itself into radical spaces, and how it is being undone. Rather than proposing ready-made solutions, they amplify the questions that are already being asked among movements. Fusing together movement-based perspectives and contemporary affect theory, they trace emergent forms of trust, care and responsibility in a wide variety of radical currents today, including indigenous resurgence, anarchism, transformative justice, and youth liberation. Joyful Militancy foregrounds forms of life in the cracks of Empire, revealing the ways that fierceness, tenderness, curiosity, and commitment can be intertwined. Interviewees include Silvia Federici, adrienne maree brown, Marina Sitrin, Gustavo Esteva, Tasnim Nathoo, Kian Cham, Leanne Betasamosake Simpson, Sebastian Touza, Walidah Imarisha, Margaret Killjoy, Glen Coulthard, Richard Day, Melanie Matining, Zainab Amadahy and Mik Turje. **[Verano sin vacaciones. Las hijas de la Costa del Sol por Ana geranios](https://piedrapapellibros.com/producto/verano-sin-vacaciones-las-hijas-de-la-costa-del-sol/)** Libro que dolorosamente me quitó la venda de los ojos en cuanto al turismo y la restauración. Tiene un formato perfecto, la primera parte (Verano sin vacaciones) te llega a la patata haciéndote vivir en las entrañas lo podrido que está el sector y luego en la segunda (Las hijas de la Costa del Sol) le da forma de ensayo y te llega al coco. Lo leímos en un club de lectura muy chulo organizado por la Escuela de las Periferias, que junto a Estuve aquí y me acordé de nosotros de Anna Pacheco, nos ayudó a tener unas discusiones super interesantes que terminaron de definir mi nuevo concepto sobre el turismo. Además tuve la suerte de asistir a una mesa redonda impresionante con Ana, Valeria del Sindicato de Inquilinas y dos compas de la PAH que le dieron distintos matices a la problemática de la vivienda que tenemos que sufrir. Y para colmo luego estuvimos rajando en un parque con Ana y luego dimos un paseo por el barrio. Un final maravilloso para un libro fantástico. ![cover](Verano-sin-vacaciones.jpg) ¿Cómo sería un mundo sin hostelería? ¿Es posible pensar en una sociedad en la que ninguna persona tuviera que servir ni ser servida, donde las bandejas no tuvieran ninguna utilidad? Este libro no va de eso. Es justo lo contrario: el análisis de un sector económico que se enriquece gracias al trabajo de quienes se dedican a servir a un público que puede permitírselo. Verano sin vacaciones es el diario de una trabajadora del sector hostelero de la costa malagueña; un relato al que se suma Las hijas de la Costa del Sol, un ensayo situado que nos interpela como turistas, pero también nos hace comprender qué hay detrás de una industria que descansa sobre la explotación laboral, el servilismo político y la voracidad ecológica. El leitmotiv es hacernos preguntas, dialogar, pensar, compartir; imaginarnos, ahora sí, cómo sería un mundo sin hostelería. **[Thinking in systems by Donella H. Meadows](https://donellameadows.org/systems-thinking-book-sale/)** Me ha encantado. Al principio dudaba de la autora por no saber de que pie cojeaba pero al final es un libro que abre mentes. Muchas ganas de resumirlo. Al principio del año descubrí el concepto de [systems thinking](https://en.wikipedia.org/wiki/Systems_thinking) a way of making sense of the complexity of the world by looking at it in terms of wholes and relationships rather than by splitting it down into its parts. It has been used as a way of exploring and developing effective action in complex contexts, enabling systems change. Systems thinking draws on and contributes to systems theory and the system sciences. Me maravilló la idea de tener un sistema nuevo y sistemático de analizar el mundo, me encantan los modelos y creo que systems thinking puede llegar a ser muy potente. De los cuatro libros que me leí del tema este es sin duda el mejor. ![cover]() This is a primer that brings you to a tangible world where anyone can understand systems and engage with them in meaningful ways. The problems we face – war, hunger, poverty, climate change, racism, gender-based violence cannot be solved by quick fixes in isolation. We need to see the whole system and reach deeper to the structures and mindsets that are at play. Written with a hopeful and visionary tone, Thinking in Systems helps readers overcome confusion and helplessness, which is a first step in the work of change. **Novela** **[Mejor la ausencia de Edurne Portela](https://edurneportela.com/mejor-la-ausencia/)** Lo empecé el 6 de marzo y esa noche me leí 209 páginas. A las 5:35 dije que ya era suficiente, aunque me fuese rabia no terminarmelo en un día. Hoy ha caído en la madrugada del 7 al 8 de marzo. Muy icónico todo, ya no me da rabia haberlo acabado hoy. Me ha maravillado, cómo escribe Edurne, es una pasada. Te coje con la primera frase y es tu cuerpo el que suplica que dejes de leer. No hay piedad. El cambio de lenguaje a medida que va avanzando la vida de Amaia es alucinante . Cómo le da un repaso a todo el conflicto de Euskadi visto desde alguien que sin estar dentro está salpicada. No se si tuvo miedo al publicarlo, es bastante crítica con toda la movida. Me sorprende porque ella si que está politizada. He pensado que me gustaría preguntarle su opinión respecto a lo que pasó y como ella lo vivió. He pensado varias veces a lo largo de la novela si es autobiográfica. Es impresionante que sea su primera novela. Ha sido un año del (no estoy seguro de si bien llamado) conflicto vasco, ya que también leí Las fieras de Clara Usón que también me gustó mucho. ![cover](mejor_la_ausencia.webp) Crecer siempre implica alguna forma de violencia, contra uno mismo o contra aquellos que quieren imponer su autoridad. Cuando además la vida trascurre en un pueblo de la margen izquierda del Nervión durante los años 80 y 90, y todo es heroína, paro, detritus medioambiental, cuando en las calles silban cada semana las pelotas de goma y los gases lacrimógenos y las paredes están llenas de consignas asesinas, la violencia no es sólo un problema personal. Mejor la ausencia nos presenta una familia destruida, atravesada por la violencia de su entorno. Amaia, la pequeña de cuatro hermanos, narra ese entorno brutal desde su mirada de niña y adolescente. Compartimos con ella su miedo, su perplejidad, su rabia, ante un padre que hiere, una madre que se esconde, tres hermanos que, como ella, sólo buscan salir adelante. Amaia es la joven que se enfrenta, hasta alcanzar sus propios límites, a este mundo hostil. Amaia es también la mujer que años después vuelve a su pueblo para encontrarse con un pasado irresuelto. En ese camino de ida y vuelta, en sus huidas y regresos, descubrirá, a su pesar, que nadie escapa del entorno en el que se cría, de la familia que le toca en suerte. Y que reconocerlo es la única manera de sobrevivir. **To kill a mockingbird de Harper Lee** Inglés muy dificil. La historia muy bien contada, es como que todo el pueblo es de la familia. Engancha bastante. One of the best-loved stories of all time, To Kill a Mockingbird has been translated into more than 40 languages, sold more than 30 million copies worldwide, served as the basis for an enormously popular motion picture, and voted one of the best novels of the 20th century by librarians across the United States. A gripping, heart-wrenching, and wholly remarkable tale of coming-of-age in a South poisoned by virulent prejudice, it views a world of great beauty and savage inequities through the eyes of a young girl, as her father -- a crusading local lawyer -- risks everything to defend a black man unjustly accused of a terrible crime. Lawyer Atticus Finch defends Tom Robinson -- a black man charged with the rape of a white girl. Writing through the young eyes of Finch's children Scout and Jem, Harper Lee explores with rich humor and unswerving honesty the irrationality of adult attitudes toward race and class in small-town Alabama during the mid-1930s Depression years. The conscience of a town steeped in prejudice, violence, and hypocrisy is pricked by the stamina and quiet heroism of one man's struggle for justice. But the weight of history will only tolerate so much. **Gestión del tiempo** **[Four thousand weeks by Oliver Burkeman](https://www.oliverburkeman.com/fourthousandweeks)** Me ha encantado. Me flipa encontrar un libro de auto ayuda y time management con una perspectiva bastante anticapitalista. Probablemente es el mejor libro de gestión de tiempo que conozco, ha generado en mi esos momentos preciosos en los que surgen ideas fuera de los límites mentales que tenía antes. Ha sido bastante liberador y ha influido mucho en crear mi nueva manera de entender el tiempo y cómo navegarlo. Lo he utilizado mucho este año para rediseñar todos mis [roadmap adjustments](roadmap_adjustments.md), en especial el trimestral y el anual. Muy muy recomendable. ![cover](4000_weeks.webp) The average human lifespan is absurdly, outrageously, insultingly brief: if you live to 80, you have about four thousand weeks on earth. How should we use them best? Of course, nobody needs telling that there isn't enough time. We're obsessed by our lengthening to-do lists, our overfilled inboxes, the struggle against distraction, and the sense that our attention spans are shrivelling. Yet we rarely make the conscious connection that these problems only trouble us in the first place thanks to the ultimate time-management problem: the challenge of how best to use our four thousand weeks. Four Thousand Weeks is an uplifting, engrossing and deeply realistic exploration of this problem. Rejecting the futile modern obsession with 'getting everything done,' it introduces readers to tools for constructing a meaningful life, showing how the unhelpful ways we've come to think about time aren't inescapable, unchanging truths, but choices we've made, as individuals and as a society - and its many revelations will transform the reader's worldview. Drawing on the insights of both ancient and contemporary philosophers, psychologists, and spiritual teachers, Oliver Burkeman sets out to realign our relationship with time - and in doing so, to liberate us from its grasp. **[Essentialism: The disciplined pursuit of less](https://gregmckeown.com/books/essentialism/)** Me apesta su tono emprendedor de sueño americano y su falta de perspectiva de clase. Eso sumado a su prepotencia mandaloriana de "this is the way"" con el essentialist path y non essentialist path hace que la lectura sea bastante horrenda. Dicho esto, si consigues abstraerte de toda esa mierda, el author aporta conceptos interesantes que me han ayudado mucho a diseñar las revisiones trimestrales y anuales del [roadmap adjustments](roadmap_adjustments.md). Es especialmente interesante para aquellas personas que no sabemos decir que no y acabamos enfrascados en mil movidas. ![cover](essentialism.webp) Essentialism isn't about getting more done in less time. It's about getting only the right things done. Have you ever found yourself stretched too thin? Do you simultaneously feel overworked and underutilized? Are you often busy but not productive? Do you feel like your time is constantly being hijacked by other people's agendas? If you answered yes to any of these, the way out is the Way of the Essentialist. Essentialism is more than a time-management strategy or a productivity technique. It is a systematic discipline for discerning what is absolutely essential, then eliminating everything that is not, so we can make the highest possible contribution toward the things that really matter. By forcing us to apply more selective criteria for what is Essential, the disciplined pursuit of less empowers us to reclaim control of our own choices about where to spend our precious time and energy -- instead of giving others the implicit permission to choose for us. Essentialism is not one more thing. It's a whole new way of doing everything. It's about doing less, but better, in every area of our lives. **Ensayo** **[La novia grulla de CJ Hauser](https://www.librosdelasteroide.com/libro/la-novia-grulla)** Me ha encantado cómo trata temas tan complicados, su filosofía de vida y lo bien que está escrito. Una ventana a todo tipo de "amor" desde la "nueva" perspectiva feminista. Me entraron muchas ganas de leerlo ya que no paraban de mencionarlo en [Punzadas sonoras](podcasts.md#punzadas_sonoras), me parece que Paula e Inés me van a dar muy buen material de lectura, aunque no pueda seguirlas el ritmo ni de lejos xD. ![cover](grulla.jpg) Una mirada franca y divertida sobre el amor, la intimidad y la identidad en el siglo XXI. Diez días después de cancelar su boda, CJ Hauser se embarcó en una expedición a Texas para estudiar a la grulla trompetera. Tras una semana chapoteando en las marismas del golfo comprendió que había estado a punto de firmar un contrato para vivir la vida de otra persona. ¿Qué pasaría si decidiéramos liberarnos de la idea tradicional de felicidad y nos abriéramos a lo inesperado? Hauser se sirve de su propia experiencia para explorar las relaciones sentimentales, los fracasos amorosos, la intimidad y la identidad en el siglo XXI. Disecciona la personalidad de los protagonistas de Expediente X mientras intenta entender qué es el amor, rememora sus peores citas de Tinder, chatea con desconocidos que conversan como robots y analiza a Katharine Hepburn en Historias de Filadelfia para aprender a no perderse en una relación. Divertido, inclasificable y brutalmente sincero, este libro trata de cómo modelamos nuestra vida sentimental y nuestra comprensión de los demás a través de los relatos; una lectura para aquellos que aprenden a encontrar la alegría en el no saber e intentan, aunque a veces fracasen, construir particulares formas de vida, familia y hogar. **Las dos amigas de Tony Morrison** Un libro breve, inquietante y curioso que te hace cuestionarte a ti mismo. Me gustaría dar una reflexión más larga pero es imposible no meter spoilers. Cuando te lo leas lo hablamos :P feat(ccc#Remember these useful things): Remember these useful things **Use c3lingo for german talks** There are many talks in german, this may deter you from attending them, but don't worry, if they are hosted in the main tracks you can hear the translation in english live. You can access them [here](https://c3lingo.org/), they work best with the ccc wifi. **[Chaos mentors](https://events.ccc.de/congress/2024/infos/mentors.html)** At Chaos Mentors, they connect experienced mentors with first-time visitors of Congress. Their goal is to make Congress more inclusive by supporting those who might not usually attend, including people with special needs. feat(ccc#First time angel tips): First time angel tips If you're lost on what shifts you might want to take here is the ones I've found easy to do: - Talk access shifts: You will be on the access of the talks making sure that the doors are opened and closed when it should and that people do not linger in the corridors, whenever you want to see a talk in one of the main tracks take these shifts as you'll be able to watch it fine and also help the organisation. If you know for sure you'll be attending one of these talks, reserve the shift the day before as they usually fly away soon. - Standby angel: You just stay in heaven for a couple of hours waiting for someone to tell you what you need to do. It's a good shift to know people and to find your place in heaven. If you know for sure you'll have a free slot between talks and workshops, reserve the shift the day before as they usually fly away soon. - At teardown: If you can stay after the congress has ended, help in the tear down, I first go to the assemblies that have attracted me the most and then go to heaven to see what else is needed. feat(pandas): Try FireDuck! NOTE: you might as well use [FireDucks](https://fireducks-dev.github.io/) as it has the same API interface and is [waaay faster](https://fireducks-dev.github.io/docs/benchmarks/). The good thing is that you only need to add to the top of your code `import fireducks.pandas as pd` and everything should work (I haven't tried myself). feat(python_snippets#Convert a datetime into a date): Convert a datetime into a date ```python datetime.now().date() ``` feat(esperanto): introduce esperanto **Personal notes on the 38C3 Esperanto gathering** - The language has 130 years - It's difficult to reform: There is no defined process to change the language and they don't like newbies to propose changes although there is an academy of esperanto - There are no different past, conditional tenses - There is no conjugation, they always use the pronouns **Anki decks** There is [this nice deck](https://esperanto.cards/) also available from the [ankiweb site](https://ankiweb.net/shared/info/353142617) **References** - [38c3 workshop slides](https://github.com/c3esperanto/kurseto) feat(hacktivist_gatherings): Chaos feminist convention [Chaos feminist convention](events.haecksen.org/cfc25) (looks like it will be mostly in german) feat(lazyvim#Load a plugin on startup): Load a plugin on startup You can [define the `lazy = false` in your plugin spec](https://lazy.folke.io/spec/examples) ```lua return { -- the colorscheme should be available when starting Neovim { "folke/tokyonight.nvim", lazy = false, -- make sure we load this during startup if it is your main colorscheme } } ``` diff --git a/docs/linux/wireguard.md b/docs/linux/wireguard.md index d69f315a8e..6ccbaa011c 100644 --- a/docs/linux/wireguard.md +++ b/docs/linux/wireguard.md @@ -16,41 +16,42 @@ VPN solution in the industry. feat(wireguard#Configure the kill switch): Configure the kill switch You can configure a kill-switch in order to prevent the flow of unencrypted packets through the non-WireGuard interfaces, by adding the following two lines ‘PostUp‘ and ‘PreDown‘ lines to the ‘[Interface]‘ section: ``` PostUp = iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT PreDown = iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT ``` The ‘PostUp’ and ‘PreDown’ fields have been added to specify an iptables command which, when used with interfaces that have a peer that specifies 0.0.0.0/0 as part of the ‘AllowedIPs’, works together with wg-quick’s fwmark usage in order to drop all packets that are either not coming out of the tunnel encrypted or not going through the tunnel itself. Note that this continues to allow most DHCP traffic through, since most DHCP clients make use of PF_PACKET sockets, which bypass Netfilter. When IPv6 is in use, additional similar lines could be added using ip6tables. If you want to allow the traffic to your LAN while keeping your kill-switch you can use: ``` PostUp = iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT && iptables -I OUTPUT -p tcp -d 192.168.0.0/24 -j ACCEPT PreDown = iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT && iptables -D OUTPUT -p tcp -d 192.168.0.0/24 -j ACCEPT ``` Here I'm assuming that your LAN is defined by `192.168.0.0/24`. [One way to test if the kill switch works](https://www.ivpn.net/knowledgebase/linux/linux-wireguard-kill-switch/) is by deleting the IP address from the wireguard interface ```bash sudo ip a del [IP address] dev [interface] ``` Where the `[IP address]` can be seen using the `ip a` command. To gracefully recover from this, you will likely have to use the wg-quick command to take the connection down, then bring it back up. feat(linux_snippets#Prevent the screen from turning off): Prevent the screen from turning off VESA Display Power Management Signaling (DPMS) enables power saving behaviour of monitors when the computer is not in use. The time of inactivity before the monitor enters into a given saving power level—standby, suspend or off—can be set as described in DPMSSetTimeouts(3). It is possible to turn off your monitor with the xset command ```bash xset s off -dpms ``` It will disable DPMS and prevent screen from blanking To query the current settings: ```bash xset q ``` If that doesn't work you can use the [keep-presence](https://github.com/carrot69/keep-presence/) program ```bash pip install keep-presence keep-presence -c ``` That will move the cursor one pixel in circles each 300s, if you need to move it more often use the `-s` flag. feat(linux_snippets#Protect the edition of a pdf with a password): Protect the edition of a pdf with a password Use `pdftk`. From its man page: Encrypt a PDF using 128-Bit Strength (the Default) and Withhold All Permissions (the Default) ```bash $ pdftk [mydoc].pdf output [mydoc.128].pdf owner_pw [foopass] ``` Same as Above, Except a Password is Required to Open the PDF ```bash $ pdftk [mydoc].pdf output [mydoc.128].pdf owner_pw [foo] user_pw [baz] ``` Same as Above, Except Printing is Allowed (after the PDF is Open) ```bash $ pdftk [mydoc].pdf output [mydoc.128].pdf owner_pw [foo] user_pw [baz] allow pri ``` To check if it has set the password correctly you [can run](https://stackoverflow.com/questions/4039659/is-it-possible-to-check-if-pdf-is-password-protected-using-ghostscript): ```bash pdftk "input.pdf" dump_data output /dev/null dont_ask ``` feat(linux_snippets#Reduce the size of an image): Reduce the size of an image The simplest way of reducing the size of the image is by degrading the quality of the image. ```bash convert <INPUT_FILE> -quality 50% <OUTPUT_FILE> ``` The main difference between `convert` and `mogrify` command is that `mogrify` command applies the operations on the original image file, whereas convert does not. ```bash mogrify -quality 50 *.jpg ``` feat(linux_snippets#Change the default shell of a user using the command line): Change the default shell of a user using the command line ```bash chsh -s /usr/bin/zsh lyz ``` feat(lua#syntax): Syntax rules **Boolean operations** **Not equal operation** In Lua, you can perform a "not equal" comparison using the `~=` operator: ```lua a ~= b -- true if a is not equal to b ``` **List operations** **Length of a list** ```lua local current_slide = {} if #current_slide > 0 then -- code end ``` feat(mobile_verification_toolkit): Add 38C3 talk from pegasus to predator [38C3 talk: From Pegasus to Predator - The evolution of Commercial Spyware on iOS](https://media.ccc.de/v/38c3-from-pegasus-to-predator-the-evolution-of-commercial-spyware-on-ios) feat(nix): Add mention to sixos Think about using [sixos](https://media.ccc.de/v/38c3-sixos-a-nix-os-without-systemd) instead, a nixos without systemd feat(podcasts#Mejores podcasts de 2024): Mejores podcasts de 2024 Estoy muy contento porque este año he descubierto podcast muy buenos, hasta el punto de considerar unidireccionalmente a varias de ellas ya parte de mi familia. **[Quieto todo el mundo](https://www.ivoox.com/podcast-quieto-todo-mundo_sq_f11778903_1.html)** Facu Díaz y Miguel Maldonado han conseguido alegrarme las horas de cocina de los lunes con la manera más amable de acercarme desde la comedia a la actualidad política. ![cover](quieto_todo_el_mundo.jpeg) Con un tono divertido y relajado, en el programa van comentando desde la ignorancia, la improvisación y, en ocasiones, la desidia las noticias más importantes de la semana. Esta misa roja ha creado una verdadera religión a lo largo de los programas, no sólo por el lore sino por el vacío existencial que dejan esa semana que no publican programa. Especialmente cuando es porque los nazis les ocupan los espacios, asco de pais... **[Punzadas sonoras](https://punzadas.com/punzadas-sonoras/)** Paula Ducay e Inés García me han recordado la importancia de la Filosofía como nadie. Gracias a ellas he descubierto nuevas maneras de ver, me han regado palabras que describen a la percepción pensamientos y sensaciones que tengo y gracias con ellas he conseguido esclarecer un poco más mi entendimiento del mundo y de mi mismo. En especial han sido la base para desenterrar pilares imprescindibles de mi vida como son el deambular creativo y la solitud. ![cover](punzadas_sonoras.jpeg) Siento que mi camino con ellas ha sido perfecto, me enamoré de ellas en los derroteros de [Carne cruda](#carne-cruda) de la temporada pasada (una pena enorme que no las hayan renovado). Son episodios de 20 minutos muy accesibles, y una vez que ya me enganché a ellas, los programas de una hora se hacen cortos. Escucharlas es un absoluto placer. **[No hay negros en el Tibet](https://es.wikipedia.org/wiki/No_hay_negros_en_el_T%C3%ADbet)** Asaari Bibang, Lamine Thior y Frank T nos regalan un par de veces al mes una ventana a la realidad de ser una persona afrodescendiente en España. Es un podcast muy amable de escuchar, te partes con las puyas que se echan, además de ser super interesante ver el salto generacional que hay entre Frank y (Asaari y Lamine). Eso si, tienes que aprender a vivir con que se interrumpan continuamente. Al principio esto me rayó bastante ya que es especialmente irritante cuando se lo hacen a Asaari. Luego ves que no tienen filtro y no sólo se cortan entre ellas, también lo hacen con las personas invitadas. ![cover](no_hay_negros_en_el_tibet.jpg) Una manera muy fácil de introducir el antiracismo en tu vida ya que con sus relatos eres capaz de verlo, identificártelo, aprender y corregir elementos racistas que tenemos inculcados por este sistema asqueroso. Y creo que como material divulgativo es perfecto ya que lo abordan desde un punto de vista antipunitivista nada agresivo, sin que por ello se dejen títere sin cabeza. **[Carne cruda](https://www.eldiario.es/carnecruda/)** Violeta Muñoz y Javier Gallego han sido la voz seria de la actualidad para mi este año. ![cover](carne_cruda.jpg) Si es cierto que esta temporada estoy un poco más desencantado con el equipo ya que: - Ya no cuentan con Punzadas Sonoras para los derroteros y a Santiago Alba Rico nunca le he tragado. - Hace tiempo que no llaman a Pablo Elorduy del Salto, me encantaba oírle y le echo de menos :(. - Han cambiado el Nido de rojos de la temporada pasada por "A diestra y siniestra" en el que incluyen a peña de derechas en los debates para darle otro punto de vista. Ya se van regulando pero los primeros programas tuve que dejar de escucharlo con cabreo porque tenía que escuchar cosas como que el genocidio de palestina estaba justificado y lindezas similares. Entiendo que puede darle color al debate, pero para eso ya me voy a los medios tradicionales la verdad... Aun así sigue siendo el referente para mi para saber qué está pasando tanto en el mundo en general como en el mundo activista. **Muriendo porque saquen más** Este año hay unos cuantos podcast que no han continuado y que me encantarían que volviesen como: - [(de eso no se habla)](https://deesonosehabla.com/) - [Gabinete de curiosidades](https://www.soynuriaperez.com/podcast) feat(radicle): Introduce radicle [Radicle](radicle.xyz) is an open source, peer-to-peer code collaboration stack built on Git. Unlike centralized code hosting platforms, there is no single entity controlling the network. Repositories are replicated across peers in a decentralized manner, and users are in full control of their data and workflow. **References** - [Home](radicle.xyz) - [Support](radicle.zulipchat.com) feat(roadmap_adjustment): small annotations throughout the document The idea of each adjustment is that it's not cumbersome, so I've decided to set a fixed time for each one, I assume that I'll do my best on both processes and wherever I reach is just fine (remember, better done than perfect). I believe on the power of constant small changes, so the next review will be built on top of the current one, and thus it will be done better and faster. feat(roadmap_adjustment#year review): Do the first sketch of the year review As the year comes to an end it can be a good idea to review stuff that has a year cadence of change and that people are reviewing, for example: - [How the world has changed](#how-the-world-has-changed) - Relevant content stuff - Life experiences - Your toolset - Your economical year review I'm not going to review the year roadmap or how I've changed or my tactics or strategies right now as I feel it makes more sense to do it in the [life review](#life-review) just before spring comes. In fact, we'll be able to do a better life review once we have the output of the review of the year. **Year review timeline** As you can see the amount of stuff to review is not something that can be done in a day, my current plan is to prepare the review of the year throughout December and carry it out on the first two weeks of January. So I've scheduled an action each 1st of December with deadline on the 31st to: - Create a new entry in `think.org` with the next format: ```org * Year review (YYYY) ** Review adjustments ** Sections *** How the world has changed *** ... ``` Then I created another action from the 1st of January to the 15th to actually do the review. **Year review phases** **How the world has changed** You don't live alone in a bubble, your life is affected by what is going on around you, so if you can it's always good to analyse it so that you can adjust your roadmap accordingly. Doing this on January makes a lot of sense because most newspapers and important people do a year review which synthesizes the most important year events and how it has changed throughout the year. I'm usually gathering the analysis on the [Year reviews](year_reviews.md) article. **How did my economy change this year** I take the chance to do a last review of the year through the lenses of my accounting system ([beancount](beancount.md)). I've made some fava dashboards that gather the most interesting information. **Review the relevant content I've consumed** With the use of [mediatracker](mediatracker.md) and other life logging tools I take a look at what content I've enjoyed the most. I want to share it also with all of you through these articles: - [Books](books.md) - [Movies](movies.md) - [TV shows](tv_shows.md) - [Podcasts](podcasts.md) - [Streaming channels](streaming_channels.md) - [Music](music.md) - [Videogames](videogames.md) - [Boardgames](boardgames.md) feat(roadmap_adjustment#life review): First sketch of the life review Life reviews are meant to give you an idea of: - How much have you and your workflows evolved - What roadmap decisions were right, which ones were wrong - With the context you have now, you can think of how you could have avoided the bad decisions. If you have the year's planning you can analyze it against your task management tools and life logs and create a review document analyzing all. **Life review timeline** As you can see the amount of stuff to review is not something that can be done in a day, my current plan is to prepare the review from the 15th of December till the 15th of January and then carry it out until the 23rd of February, to leave space to do the spring quarter and March month reviews. feat(signal#Signal bots): Signal bots To write signal bots you can use [this library](https://github.com/JeremyGDiamond/signal-info-bot) feat(simplexchat): Introduce simplex chat [Simplex chat](https://simplex.chat/) is the first messenger without user IDs I went to a talk in the [38c3](ccc.md) (december 2024), and even though the project looked good there were some stuff that pushed me away: - The cypher has not been tested - It's not fully open sourced feat(vim_plugin_development): Sum up the notes of the vim plugin development tutorial For the repository name, plugins usually finish with the `.nvim` extension. I'm going to call mine `org-misc.nvim`. Let's go with the second, add to your `init.lua` the next code: ```lua print("Hello from our plugin") ``` **[How to load our extension](https://www.youtube.com/watch?v=VGid4aN25iI)** We can have the code of our extension wherever we want in our filesystem, but we need to tell Neovim where our plugin’s code is, so it can load the files correctly. Since I use lazy.nvim this is the way to load a plugin from a local folder: ```lua { dir = "~/projects/org-misc", -- Your path } ``` Now if you restart your neovim you won't see anything until you load it with `:lua require "org-misc"` you'll see the message `Hello from our plugin` in the command line. To automatically load the plugin when you open nvim, use the next lazy config: ```lua { dir = "~/projects/org-misc", -- Your path config = function() require "org-misc" end } ``` **[The plugin file structure](https://www.youtube.com/watch?v=VGid4aN25iI)** Usually `init.lua` starts with: ```lua local M = {} M.setup = function () -- nothing yet end return M ``` Where: - `M` stands for module, and we'll start adding it methods. - `M.setup` will be the method we use to configure the plugin. Let's start with a basic functionality to print some slides: ```lua local M = {} M.setup = function() -- nothing yet end ---@class present.Slides ---@fields slides string[]: The slides of the file --- Takes some lines and parses them --- @param lines string --- @return present.Slides local parse_slides = function(lines) local slides = { slides = {} } for _, line in ipairs(lines) do print(line) end return slides end print(parse_slides({ "# Hello", "this is something else", "# world", "this is something else", })) return M ``` You [can run the code in the current buffer](https://vi.stackexchange.com/questions/44902/how-can-i-execute-lua-code-from-a-buffer) with `:%lua`. For quick access, I've defined the next binding: ```lua keymap.set("n", "<leader>X", ":%lua<cr>", {desc = "Run the lua code in the current buffer"}) ``` The `print(parse_slides..` part it's temporal code so that you can debug your code easily. Once it's ready you'll remove them **Call a method of a module** To run the method of a module: ```lua local M = {} M.setup = function() -- nothing yet end return M ``` You can do `require('org-misc').setup()` **Set keymaps** **Inside the code of the plugin** You can set keymaps into your plugins by using: ```lua vim.keymap.set("n", "n", function() -- code end) ``` The problem is that it will override the `n` key everywhere which is not a good idea, that's why we normally limit it to the current buffer. You can get the current buffer with `buffer = true` ```lua vim.keymap.set("n", "n", function() -- code end, { buffer = true } ) ``` **Continue till the end** If you want to stop capturing the traffic flow and go to the end ignoring all breakpoints, remove all breakpoints and do `.c` **[Reload the plugin without exiting nvim](https://www.reddit.com/r/neovim/comments/170jkzh/how_to_reload_plugin_when_developing_them/)** If you are using lazy.nvim, there is a feature that lazy.nvim provides for this purpose: ```lua Lazy reload your_plugin your_plugin2 ``` **Neovim plugin testing** We're going to test it with `plenary`. We'll add a `tests` directory at the root of our repository. Each of the test files need to end in `_spec.lua`, so if we want to test a `parse_lines` it will be called `parse_lines_spec.lua`. Each test file has the following structure ```lua local clockin = require('org-misc').clockin describe("org-misc.clockin", function() it("should do clockin", function() assert.is.True(clock_in()) end) end) ``` These are all the tests for the `clockin` method, Now you can run the test with `:PlenaryBustedFile %` **Configuring neotest to run the tests** Using `:PlenaryBustedFile %` is not comfortable, that's why we're going to use [`neotest`](https://github.com/nvim-neotest/neotest?tab=readme-ov-file) Configure it with: ```lua return { { "nvim-neotest/neotest", dependencies = { "nvim-neotest/neotest-plenary", }, config = function() require("neotest").setup({ adapters = { require("neotest-plenary"), }, }) end, }, } ``` Now you can do: - `<leader>tT` to run all test files - `<leader>tt` to run the whole file - `<leader>tl` to run the last test - `<leader>to` to show the output - `<leader>tr` to run the nearest - `<leader>ts` to show the summary **[Remove the Undefined global describe linter warnings](https://www.reddit.com/r/neovim/comments/18pe4f4/plenarynvim_undefined_global_describe_it_etc_not/)** Add to the root of your repository a `.luarc.json` file with [the next contents](https://github.com/nvim-orgmode/orgmode/blob/master/.luarc.json) ```json { "$schema": "https://raw.githubusercontent.com/sumneko/vscode-lua/master/setting/schema.json", "diagnostics": { "globals": ["vim"] }, "hint": { "enable": true }, "runtime": { "path": ["?.lua", "?/init.lua"], "pathStrict": true, "version": "LuaJIT" }, "telemetry": { "enable": false }, "workspace": { "checkThirdParty": "Disable", "ignoreDir": [".git"], "library": [ "./lua", "$VIMRUNTIME/lua", "${3rd}/luv/library", "./tests/.deps/plugins/plenary" ] } } ``` **Testing internal functions** If you have a function `parse_lines` in your module that you want to test, you can export it as an internal method ```lua local parse_lines = function () -- code end M._parse_lines = parse_lines ``` feat(vim_plugin_development#Control an existing nvim instance): Control an existing nvim instance with dap Once you have all set up and assuming you're using the lazyvim keybindings for `nvim-dap`: ```lua vim.api.nvim_set_keymap('n', '<leader>ds', [[:lua require"osv".launch({port = 8086})<CR>]], { noremap = true }) vim.api.nvim_set_keymap('n', '<leader>dq', [[:lua require"osv".stop()<CR>]], { noremap = true }) ``` You will debug the plugin by: - Launch the server in the nvim instance where you're going to run the actions using `<leader>ds`. - Open another Neovim instance with the source file (the debugger). - Place breakpoint with `<leader>db`. - On the debugger connect to the DAP client with `<leader>dc`. - Optionally open the `nvim-dap-ui` with `<leader>B` in the debugger. - Run your script/plugin in the debuggee Now you can interact with the debugger in the window below the code. You have the next commands: - `help`: Show all commands - `<enter>`: run the same action as the previous one. For example if you do `.n` and then `<enter>` it will run `.n` again. - `.n` or `.next`: next step - `.b` or `.back`: previous step (if the debugger supports it) - `.c` or `.continue`: Continue to the next breakpoint. feat(year_reviews): Primera versión de la revisión del 2024 **Fuentes** - [Boletín de socias de El Salto 2024](https://www.elsaltodiario.com/boletin/balance-2024-socias) - [Fotografías de un año en el que no se pudo parar el genocidio](https://www.elsaltodiario.com/fotografia/imagenes-un-ano-no-se-pudo-parar-genocidio) - [Boletín de diciembre de El Salto 2024](https://www.elsaltodiario.com/boletin/diciembre-2024) - [Siete palabras para entender feminismos 2024](https://www.elsaltodiario.com/feminismos/siete-palabras-entender-feminismos-2024) **Fascismo** En 2024, a nivel estatal la extrema derecha avanzó posiciones y cuotas de poder, pero las movilizaciones masivas por la vivienda, contra el modelo turístico y la gestión de la dana desafiaron abiertamente su relato del mundo y su reparto de culpas. A nivel mundial la cosa va incluso peor: - estados unidos, la principal potencia económica y militar del mundo ha vuelto a caer en manos de Trump, un multimillonario sádico, que ha conseguido todo su poder a través de su gigantesco poder mediático y un ejército de trolls, bulos y paramilitares supremacistas vestidos con pasamontañas y fusiles de asalto. Los principales países del mundo ya han caído o están a punto de caer en las redes de esta internacional de la desinformación, respaldada y promocionada a su vez por cuatro de los cinco hombres más ricos del mundo. Uno de ellos es elon musk, un ser despreciable que tras cargarse twitter está haciendo campaña por las ultraderechas como la alemana afd. - [en argentina ha estado gobernando javier milei](https://es.wikipedia.org/wiki/Presidencia_de_Javier_Milei) desde el 10 de diciembre de 2023, básicamente se está cargando el estado de derecho y todos los avances en políticas feministas que se consiguieron con tanto esfuerzo. **Antifascismo** Las resistencias a las ideas que propugna esta coalición mundial neofascista, que culpa a la migración y a los pobres de todos los males, que niega el cambio climático, los derechos LGTBIQ+ y de las mujeres, pasan por otro lado. Desde El Salto tenemos la convicción de que el resultado de esta contienda se dirimirá en gran parte en el campo de la información, de los medios y las redes sociales. Por eso creemos que es tan importante, ahora más que nunca, contar con medios propios, que no dependan de grandes poderes económicos o intereses partidarios. ![Byron Maher](2024-antifa.jpg) Manifestación antiracista en las calles de Londres. **Vivienda** Las gigantescas movilizaciones por la vivienda y contra el modelo depredador del turismo que recorrieron 2024 desde las Islas Canarias, pasando por Baleares, Madrid, Barcelona y casi todas las grandes capitales españolas, son una buena demostración de que el final de esta película está abierto. Después de estas demostraciones de fuerza y significado, la vivienda no es más barata, pero son menos las personas que piensan que el problema de fondo son los “inquiokupas”. ![Luz Sosa](2024-vivienda.jpg) Canarias se plantó en el mes de abril ante el turismo de masas en una movilización histórica simultánea en las ocho islas. ![Álvaro Minguito](2024-vivienda-1.jpg) Manifestación contra la especulación inmobiliaria y por el derecho a la vivienda en octubre. ![Alberto Astudillo](2024-vivienda-2.jpg) Los desahucios han continuado durante el 2024, al amparo de la cobertura jurídica ofrecida a los especuladores que trafican con el derecho a la vivienda digna, en contra de lo que establece la Constitución Española. ![Álvaro Minguito](2024-vivienda-3.jpg) Un amanecer en el barrio de Lavapiés, mientras el vecindario espera un nuevo desahucio en su calle, que finalmente se ejecutó, dejando a otra familia en la calle. **Cambio climático** **La Dana** Similar lucha por el discurso y reparto de culpas se produjo tras la dana en València, donde los intentos de la ultraderecha de dirigir el debate hacia los saqueos realizados supuestamente por migrantes fueron frustrados por la emocionante respuesta popular para hacer llegar una ayuda que ninguna institución, ni local ni estatal, estaba proporcionando. ![Jaime Pérez Rivero](2025-01-05-dana.jpg) Una senyera del Pais Valencià en una ventana de Paiporta, tras el paso de la dana. ![Pedro Armestre](2024-dana-2.jpg) El cuerpo de un perro flota junto a los restos de cañizo y arboles arrastrados por la Dana a la playa de Pinedo. La pérdida de biodiversidad, víctima y a la vez solución de esta crisis, también está detrás de lo que está ocurriendo. Restaurar la naturaleza es clave para protegernos frente a eventos extremos a la vez que es una oportunidad transformadora para tener unos entornos resilientes y sanos para la biodiversidad y las personas. Para esto se necesitan medidas desde el nivel local hasta el global. ![Jose Ángel Sánchez Rocamora](2024-dana-3.jpg) No obstante la población valenciana (y la del resto del estado) ha hecho ver el descontento con la mala gestión que hizo el gobierno del PP en la comunidad como se puede ver en la manifestación multitudinaria del 30 de noviembre para pedir la dimisión del president Carlos Mazón. **Feminismo** Este 2024 también ha estado marcado por las luchas feministas: el terremoto mediático y social provocado por las denuncias anónimas de violencia sexual en redes ha trastocado el panorama político, ha revuelto el mundo del cine y del teatro, y sobre todo, ha resquebrajado el armazón de impunidad que recubre las agresiones machistas. Más allá de dónde acabe todo esto, el movimiento feminista ha vuelto a demostrar su enorme potencia de cambio en un sentido opuesto a la agenda de la extrema derecha. ![Elisa González](2024-feminismo.jpg) El 25 de noviembre, Día Internacional de la Eliminación de la Violencia contra la Mujer, se celebró en medio de una intensa conversación en torno a las violencias sexuales. **Caso Pelicot** ![Martin Barzilai](2025-01-05-dana.jpg) El 19 de diciembre de 2024 conocimos la sentencia del caso Pelicot. Dominique fue condenado a 20 años, la pena máxima. El Tribunal de Aviñón (Francia) que lo juzgaba lo consideró culpable de un delito de violación agravada contra ahora ya exesposa Gisèle Pelicot. Desde julio de 2011 y hasta octubre de 2020, el hombre utilizó webs de citas para invitar a desconocidos a agredir sexualmente a su entonces esposa, a la que previamente había suministrado una cantidad de ansiolíticos suficiente como para acercarla “al estado de coma”. Los otros casi cincuenta acusados han sido declarados culpables de violación con penas de entre tres y 15 años. Gisèle también ha hecho alusión a la vergüenza cuando ha explicado por qué todo el mundo la conoce por el apellido de su exmarido y agresor: “Tengo nietos y no quiero que se avergüencen de usar ese apellido. Quiero que estén orgullosos de su abuela. A partir de hoy se recordará a la señora Pelicot y cada vez menos al señor Pelicot”, explicó esta mujer que aunque ha recuperado su apellido tras divorciarse no quiere regalarle el nombre de sus nietos a un violador. La consigna “la vergüenza debe cambiar de bando” se ha repetido más allá de Francia y tuvo un lugar destacado en las convocatorias del 25 de noviembre, Día por la Eliminación de la Violencia contra las Mujeres. **Caso Errejón** El 23 de octubre, el testimonio de una mujer, publicado en la cuenta de la periodista Cristina Fallarás en Instagram corre por las redes. La mujer señala a “un político de Madrid” como un “maltratador psicológico”. En pocas horas, las redes identifican a Íñigo Errejón. El jueves 25 de octubre, Errejón anuncia que abandona la política y esa misma tarde la actriz Elisa Mouliaá presenta una denuncia ante la Policía en la que relata una agresión sexual. **Migración** El fin de año además nos arroja otra cifra, no por esperada menos demoledora: la estimación de más de diez mil personas muertas tratando de llegar a nuestro país. Personas que, por mucho que se empeñe una extrema derecha en auge mediático, solo buscaban mejorar en algo sus vidas y que la perdieron por un sistema cruel que denomina a este otro genocidio “crisis migratoria”. ![Manuel del Valle](2024-migracion.jpg) Las fronteras españolas han marcado este 2024 un récord de la vergüenza: 10.457 personas han muerto tratando de alcanzar las costas de la península. Imagen de la manifestación antirracista el pasado 9 de noviembre, Madrid. **Movimientos sociales** Este año ha sido duro para las okupas en la ciudad de madríd. Se desalojaron el CSO La Ferroviaria y el CSO La Atalaya ![David F. Sabadell](2024-atalaya.jpg) Integrantes del CSO La Atalaya sacan materiales que formaban parte de las decenas de actividades que ofrecía el centro social, mientras la zona se encuentra acordonada por agentes de Policía Nacional. **Servicios públicos** ![Edu León](2024-servicios-publicos.jpg) Las asambleas de estudiantes piden seguir la reivindicación de tener unos presupuestos que permitan la supervivencia de la universidad pública en una autonomía donde se impulsa más a la enseñanza privada. **Internacional** **Palestina** En diciembre, Israel ha enfocado sus ataques sobre los hospitales del norte de Gaza. ejército que ha llevado a cabo un genocidio que dura ya más de 440 días. Comenzamos el año con los ojos puestos en Gaza y Cisjordania y pendientes de la vida de cientos de miles de palestinos amenazados en todo el mundo por el estado sionista de Israel. La cosa no ha ido a mejor en estos 12 meses y a este genocidio calculado le han acompañado otras desgracias, como la creciente crisis ambiental con efectos cada vez más recurrentes en todo el planeta, incluida nuestra españita. En Valencia 231 personas han perdido la vida y 4 más permanecen desaparecidas a causa de una dana que arrasó en pocas horas la comunidad, muertes que quizá pudieron haberse evitado si los responsables políticos hubieran actuado con algo de los que se les presupone, vocación de servicio público, en vez de esconder sus miserias y tratar a toda costa judicial de evitar responsabilidades. Tras la elección de trump el panorama de palestina no ha hecho más que empeorar (aunque harris tampoco tenía pinta que se fuese a mojar lo más mínimo). No obstante la sociedad está respondiendo como buenamente puede para presionar a sus gobiernos a que paren el genocidio. ![Montecruz foto](2025-01-05-gaza.jpg) En el mes de mayo, cientos de estudiantes tomaron la Universidad Humboldt de Berlín en apoyo a Gaza. ![Dani Gago](2024-palestina.jpg) La batalla naval de Vallecas en 2024, con especial recuerdo para Palestina. **Siria** ![Laurent Perpigna Iban](2024-siria.jpg) Miembros árabes de las Fuerzas Democráticas Sirias en el interior del estadio de Rakka, que el Estado Islámico había convertido en prisión. **Honduras** ![Edu León](2024-honduras.jpg) Honduras heredó del narcogobierno de Juan Orlando Hernández la violencia que ejercen de forma estructural la Policía, el Ejército, las maras y los sicarios contratados por las empresas para matar a líderes ambientales. **Corrupción** **República** Este año la monarquía ha caído algo en el ideario popular, aunque no lo suficiente. ![Sou Harris](2024-republica.jpg) Momentos de tensión en la visita de los reyes y representantes políticos 5 días después del paso de la Dana en Valencia. La liaron parda porque impidieron que llegase ayuda voluntaria para que pasase l séquito real. No sentó nada bien, por lo que sea. feat(zfs_storage_planning): Add the stats of the Enterprise Capacity seagate disk | Specs | IronWolf | IronWolf Pro | Exos 7E8 8TB | Exos 7E10 8TB | Exos X18 16TB | Enterpri. Capacity | | ---------------------------- | ------------------ | -------------------- | ------------ | ------------- | ------------- | --- | | Bays | 1-8 | 1-24 | ? | ? | ? | ? | | Capacity | 1-12TB | 2-20TB | 8TB | 8TB | 16 TB | 10 TB | | RPM | 5,400 RPM (3-6TB) | 7200 RPM | 7200 RPM | 7200 RPM | 7200 RPM | 7200 RPM | | RPM | 5,900 RPM (1-3TB) | 7200 RPM | 7200 RPM | 7200 RPM | 7200 RPM | 7200 RPM | | RPM | 7,200 RPM (8-12TB) | 7200 RPM | 7200 RPM | 7200 RPM | 7200 RPM | 7200 RPM | | Speed | 180MB/s (1-12TB) | 214-260MB/s (4-18TB) | 249 MB/s | 255 MB/s | 258 MB/s | 254 MB/s | | Cache | 64MB (1-4TB) | 256 MB | 256 MB | 256 MB | 256 MB | 256 MB | | Cache | 256MB (3-12TB) | 256 MB | 256 MB | 256 MB | 256 MB | 256 MB | | Power Consumption | 10.1 W | 10.1 W | 12.81 W | 11.03 W | 9.31 W | 8 W | | Power Consumption Rest | 7.8 W | 7.8 W | 7.64 W | 7.06 W | 5.08 W | 4.5 W | | Workload | 180TB/yr | 300TB/yr | 550TB/yr | 550TB/yr | 550TB/yr | < 550TB/yr | | MTBF | 1 million | 1 million | 2 millions | 2 millions | 2.5 millions | 2.5 millions | | Noise idle | ? | ? | ? | ? | ? | 3.0 bels max | | Noise performance seek | ? | ? | ? | ? | ? | 3.4 bels max | diff --git a/mkdocs.yml b/mkdocs.yml index 7d0201801c..ade48234b0 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -5,19 +5,18 @@ site_author: Lyz site_url: https://lyz-code.github.io/blue-book nav: - Introduction: index.md - - Projects: projects.md - Activism: - activism.md - Antifascism: - antifascism.md - Antifascist Actions: antifascist_actions.md - Hacktivism: - - Gatherings: - - hacktivist_gatherings.md - - Chaos Communication Congress: ccc.md - - Collectives: hacktivist_collectives.md - - Tools: - - Mobile Verification Toolkit: mobile_verification_toolkit.md + - Gatherings: + - hacktivist_gatherings.md + - Chaos Communication Congress: ccc.md + - Collectives: hacktivist_collectives.md + - Tools: + - Mobile Verification Toolkit: mobile_verification_toolkit.md - Anti-Colonialism: anticolonialism.md - Anti-Transphobia: antitransphobia.md - Anti-Racism: antiracism.md @@ -27,6 +26,7 @@ nav: - Feminism: - Privileges: feminism/privileges.md - Palestine: palestine.md + - Anarchism: anarchism.md - Memoria histórica: memoria_historica.md - Anti-Tourism: antitourism.md - Mentoring: mentoring.md @@ -36,153 +36,154 @@ nav: - Laboral: laboral.md - Collaborating tools: collaborating_tools.md - Conference organisation: conference_organisation.md - - Ludditest: luddites.md + - Ludditest: luddites.md - Life Management: - life_management.md - Time management: - - time_management.md - - Time management abstraction levels: time_management_abstraction_levels.md - - Action Management: action_management.md - - Roadmap Adjustment: - - roadmap_adjustment.md - - Strategy: strategy.md - - Systems Thinking: systems_thinking.md - - Roadmap Management Tools: - - roadmap_tools.md - - Org Mode: - - orgmode.md - - Org-rw: org_rw.md - - Orgzly: orgzly.md - - OpenProject: openproject.md - - Habit management: habit_management.md - - Interruption management: - - interruption_management.md - - Interruption Management Analysis: - - Work Interruption Analysis: work_interruption_analysis.md - - Personal Interruption Analysis: personal_interruption_analysis.md - - Week management: week_management.md - - Calendar management: - - calendar_management.md - - Calendar automation: - - vdirsyncer: vdirsyncer.md - - Calendar clients: - - Khal: khal.md - - Gancio: gancio.md - - Time management theories: - - Getting Things Done: gtd.md + - time_management.md + - Time management abstraction levels: time_management_abstraction_levels.md + - Action Management: action_management.md + - Roadmap Adjustment: + - roadmap_adjustment.md + - Strategy: strategy.md + - Systems Thinking: systems_thinking.md + - Roadmap Management Tools: + - roadmap_tools.md + - Org Mode: + - orgmode.md + - Org-rw: org_rw.md + - Orgzly: orgzly.md + - OpenProject: openproject.md + - Habit management: habit_management.md + - Interruption management: + - interruption_management.md + - Interruption Management Analysis: + - Work Interruption Analysis: work_interruption_analysis.md + - Personal Interruption Analysis: personal_interruption_analysis.md + - Week management: week_management.md + - Calendar management: + - calendar_management.md + - Calendar automation: + - vdirsyncer: vdirsyncer.md + - Calendar clients: + - Khal: khal.md + - Gancio: gancio.md + - Time management theories: + - Getting Things Done: gtd.md - Life chores management: - - Trip management: - - Route management: route_management.md - - Map management: map_management.md - - Food management: food_management.md - - Stock management: - - Grocy: grocy_management.md - - Money management: - - money_management.md - - beancount: - - beancount.md - - bean-sql: bean_sql.md - - Fava Dashboards: fava_dashboards.md - - Tools management: - - tool_management.md - - Email management: - - email_management.md - - Email automation: - - email_automation.md - - Email automation tools: - - mbsync: mbsync.md - - mirador: mirador.md - - afew: afew.md - - notmuch: notmuch.md - - Email automation libraries: - - mailbox: mailbox.md - - IMAP: - - IMAP library comparison: python_imap.md - - imap-tools: imap_tools.md - - Email clients: - - himalaya: himalaya.md - - alot: alot.md - - Email protocols: - - Maildir: maildir.md - - Instant Messages Management: - - instant_messages_management.md - - XMPP/Jabber: - - Dino: dino.md - - Gajim: gajim.md - - Profanity: profanity.md - - Matrix: - - matrix.md - - Matrix Highlight: matrix_highlight.md - - Rocketchat: rocketchat.md - - Computer configuration management: configuration_management.md + - Trip management: + - Route management: route_management.md + - Map management: map_management.md + - Food management: food_management.md + - Stock management: + - Grocy: grocy_management.md + - Money management: + - money_management.md + - beancount: + - beancount.md + - bean-sql: bean_sql.md + - Fava Dashboards: fava_dashboards.md + - Tools management: + - tool_management.md + - Email management: + - email_management.md + - Email automation: + - email_automation.md + - Email automation tools: + - mbsync: mbsync.md + - mirador: mirador.md + - afew: afew.…
- Loading branch information