diff options
42 files changed, 351 insertions, 161 deletions
diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..46a8d54 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule "vendor/ikiwiki-plugin-mathjax"] + path = vendor/ikiwiki-plugin-mathjax + url = https://github.com/bk/ikiwiki-plugin-mathjax +[submodule "vendor/MathJax"] + path = vendor/MathJax + url = https://github.com/mathjax/MathJax.git diff --git a/Makefile.env b/Makefile.env index 32e66a1..f41c74a 100644 --- a/Makefile.env +++ b/Makefile.env @@ -18,8 +18,14 @@ HTTP_BASE = www web: jhead mat + @#echo Applying workaround since exclude patterns are not working... + @find vendor -name '*.md' -exec rm {} \; + @ikiwiki --setup ikiwiki.yaml + @#echo Cleaning up... + git submodule foreach git restore . + web_deploy: @rsync -avz --delete www/ blog:/var/sites/blog/www/ diff --git a/local.css b/assets/css/local.css index b94d3f7..b94d3f7 100644 --- a/local.css +++ b/assets/css/local.css diff --git a/books/epistemology/metodo.md b/books/epistemology/metodo.md index 848958f..40440d6 100644 --- a/books/epistemology/metodo.md +++ b/books/epistemology/metodo.md @@ -16,7 +16,7 @@ ## Índice -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] * [Volume I](1). * [Volume II](2). diff --git a/books/epistemology/metodo/1.md b/books/epistemology/metodo/1.md index 41edca0..95133df 100644 --- a/books/epistemology/metodo/1.md +++ b/books/epistemology/metodo/1.md @@ -1,6 +1,6 @@ [[!meta title="O Método - Volume I"]] -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] ## Geral diff --git a/books/epistemology/metodo/2.md b/books/epistemology/metodo/2.md index ba26fae..70b5dad 100644 --- a/books/epistemology/metodo/2.md +++ b/books/epistemology/metodo/2.md @@ -1,6 +1,6 @@ [[!meta title="O Método - Volume II"]] -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] ## Geral diff --git a/books/epistemology/metodo/3.md b/books/epistemology/metodo/3.md index 8f2960e..a9a00db 100644 --- a/books/epistemology/metodo/3.md +++ b/books/epistemology/metodo/3.md @@ -1,6 +1,6 @@ [[!meta title="O Método - Volume III"]] -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] ## Geral diff --git a/books/epistemology/metodo/4.md b/books/epistemology/metodo/4.md index df491ab..7963389 100644 --- a/books/epistemology/metodo/4.md +++ b/books/epistemology/metodo/4.md @@ -1,6 +1,6 @@ [[!meta title="O Método - Volume IV"]] -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] ## Geral diff --git a/books/epistemology/metodo/5.md b/books/epistemology/metodo/5.md index ea0835e..b154d0e 100644 --- a/books/epistemology/metodo/5.md +++ b/books/epistemology/metodo/5.md @@ -1,6 +1,6 @@ [[!meta title="O Método - Volume V"]] -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] ## Geral diff --git a/books/epistemology/metodo/6.md b/books/epistemology/metodo/6.md index 61a3ee4..2e6eac8 100644 --- a/books/epistemology/metodo/6.md +++ b/books/epistemology/metodo/6.md @@ -1,6 +1,6 @@ [[!meta title="O Método - Volume VI"]] -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] ## Geral diff --git a/books/history/ibm-holocaust.md b/books/history/ibm-holocaust.md index 6205c17..f9e08ef 100644 --- a/books/history/ibm-holocaust.md +++ b/books/history/ibm-holocaust.md @@ -1917,4 +1917,22 @@ That was before the US entering the war. recent genocides. The Holocaust kill rate is some 10 times higher than estimates suggested by authorities on comparative genocide. +* Unsorted: + * [IBM Archives: 1933](https://www.ibm.com/ibm/history/history/year_1933.html) + * [IBM100 - A Culture of Think](https://www.ibm.com/ibm/history/ibm100/us/en/icons/think_culture/transform/) + * [Dehomag (Deutsche Hollerith Maschinen) D11 tabulator - Collections Search - United States Holocaust Memorial Museum](https://collections.ushmm.org/search/catalog/irn521586) + * [Dehomag D11 sorter - Collections Search - United States Holocaust Memorial Museum](https://collections.ushmm.org/search/catalog/irn521587) + * [How IBM Technology Jump Started the Holocaust](https://gizmodo.com/how-ibm-technology-jump-started-the-holocaust-5812025) + * [IBM, Hitler and the Holocaust: A Terrible Tale of Capitalism Without Conscience | Corporate Greed & Corruption Chronicles](https://corporategreedchronicles.wordpress.com/2011/11/15/ibm-hitler-and-the-holocaust-a-terrible-tale-of-capitalism-without-conscience/) + * [IBM & "Death's Calculator"](https://www.jewishvirtuallibrary.org/ibm-and-quot-death-s-calculator-quot) + * [Computing at Columbia Timeline](http://www.columbia.edu/cu/computinghistory/index.html#1939) + * [ibm carbine For Sale – Buy ibm carbine at GunBroker.com](https://www.gunbroker.com/All/search?Keywords=ibm%20carbine) + * [Hollerith Census Machine dials | Marcin Wichary | Flickr](https://www.flickr.com/photos/mwichary/2632673143/in/photostream/) + * [Henri Georges Trainson: Annexe III - Le réseau Marco-Polo](https://hgtrainson.blogspot.com/2011/08/annexe-iii-le-reseau-marco-polo.html) + * [Réseau Marco Polo : définition de Réseau Marco Polo et synonymes de Réseau Marco Polo (français)](http://dictionnaire.sensagent.leparisien.fr/R%C3%A9seau%20Marco%20Polo/fr-fr/) + * [Klaus Barbie - Wikipedia](https://en.wikipedia.org/wiki/Klaus_Barbie) + * [Nikolaus “Klaus” Barbie: The Butcher of Lyon | Holocaust Encyclopedia](https://encyclopedia.ushmm.org/content/en/article/nikolaus-klaus-barbie-the-butcher-of-lyon) + * [Klaus Barbie: women testify of torture at his hands](http://www.writing.upenn.edu/~afilreis/Holocaust/barbie.html) + * [PBS Frontline: Klaus Barbie The American Connection (1983) - YouTube](https://www.youtube.com/watch?v=58FVOCktU5U) + [[!tag tecnology history sociology]] diff --git a/books/philosophy/cidade-perversa.md b/books/philosophy/cidade-perversa.md index b9c389f..d725442 100644 --- a/books/philosophy/cidade-perversa.md +++ b/books/philosophy/cidade-perversa.md @@ -339,7 +339,7 @@ do nosso nascimento prematuro: 229 Três respostas básicas seriam possíveis: do neurótico, do perverso e do psicótico: - + Dessa estrutura circular em que o um (s) supõe o Outro (S) que “sub-põe” o um, é possível sair de três maneiras: pela neurose, pela perversão ou pela psicose. O que retoma em novas condições a intuição de Freud, que havia distinguido três @@ -348,43 +348,43 @@ Três respostas básicas seriam possíveis: do neurótico, do perverso e do psic 1. Neurose: "dívida simbólica contraída em relação ao Outro", lembando que "sujeito" vem de "sujeição", de se sujeitar: - Se a histeria constitui o protótipo da neurose, é porque o(a) histérico(a) é - aquele(a) que venera o Outro por lhe ter tudo dado e ao mesmo tempo o detesta - por tê-lo(a) posto na situação de tanto e tudo lhe dever. Ele/ela amará o Outro - detestando-o ou o detestará amando-o. É o lugar de um nó psíquico importante, - no qual constantemente se remotiva o conflito neurótico em todas as suas formas - possíveis. Por exemplo, esta, que faz as delícias do histérico: seduzir o Outro - — sob a figura de Deus, de um mestre, de um grande homem, etc. — ao mesmo tempo - escapando-lhe. + Se a histeria constitui o protótipo da neurose, é porque o(a) histérico(a) é + aquele(a) que venera o Outro por lhe ter tudo dado e ao mesmo tempo o detesta + por tê-lo(a) posto na situação de tanto e tudo lhe dever. Ele/ela amará o Outro + detestando-o ou o detestará amando-o. É o lugar de um nó psíquico importante, + no qual constantemente se remotiva o conflito neurótico em todas as suas formas + possíveis. Por exemplo, esta, que faz as delícias do histérico: seduzir o Outro + — sob a figura de Deus, de um mestre, de um grande homem, etc. — ao mesmo tempo + escapando-lhe. 2. Psicose: o caso-limite, "mais onerosa. Ela diz que se Deus é, então eu não sou": - Um combate que pode assumir duas formas opostas e complementares. Uma forma - paranoica, como tal perseguida: existe um Deus que está constantemente querendo - roubar meu ser, que me espiona e me persegue. E uma forma esquizofrênica e - triunfante: Deus, na verdade, sou eu. Nos dois casos, essa potência - manifesta-se como sobrenatural, o mais das vezes através de uma voz imperiosa - que ocupa o sujeito, no sentido de tomar posse dele, de se apoderar dele. + Um combate que pode assumir duas formas opostas e complementares. Uma forma + paranoica, como tal perseguida: existe um Deus que está constantemente querendo + roubar meu ser, que me espiona e me persegue. E uma forma esquizofrênica e + triunfante: Deus, na verdade, sou eu. Nos dois casos, essa potência + manifesta-se como sobrenatural, o mais das vezes através de uma voz imperiosa + que ocupa o sujeito, no sentido de tomar posse dele, de se apoderar dele. 3. Perversão: - Quanto à enunciação perversa, ela se esclarece nesse esquema. Ela permite - entender que o que está em jogo no grande circuito enunciativo (com o “Ele”) - vem a atuar no pequeno, de tal maneira que o “eu” ocupe, diante do “tu”, a - posição eminente que o “Ele” ocupa em relação a todo sujeito falante (“eu” e - “tu”). Em suma, o perverso coloca-se, diante de todo outro, na posição do - Outro. A definição poderá ser estranhada. Mas seria um equívoco, pois ela - encontra e confere sentido à maneira como Lacan definia o perverso: “O perverso - imagina ser o Outro para garantir seu gozo.”302 De fato, essa proposição só - pode ser realmente entendida mobilizando-se as teorias da enunciação baseadas - na análise da relação de lugar entre as três pessoas verbais: “eu” (o um), “tu” - (o outro) e “Ele” (o Outro). A perversão surge então como uma negação da grande - estrutura, compensada por um inchaço da pequena, como se essa estrutura - secundária pudesse e devesse suportar sozinha o que está em jogo na grande. - Poderíamos falar aqui de uma translação do que está em jogo na estrutura - principal para a estrutura secundária. O que, provavelmente, explica a - seriedade com que o perverso maquina suas encenações, às vezes deploráveis, - como se ele ocupasse diante de seu alter ego o lugar do Outro. + Quanto à enunciação perversa, ela se esclarece nesse esquema. Ela permite + entender que o que está em jogo no grande circuito enunciativo (com o “Ele”) + vem a atuar no pequeno, de tal maneira que o “eu” ocupe, diante do “tu”, a + posição eminente que o “Ele” ocupa em relação a todo sujeito falante (“eu” e + “tu”). Em suma, o perverso coloca-se, diante de todo outro, na posição do + Outro. A definição poderá ser estranhada. Mas seria um equívoco, pois ela + encontra e confere sentido à maneira como Lacan definia o perverso: “O perverso + imagina ser o Outro para garantir seu gozo.”302 De fato, essa proposição só + pode ser realmente entendida mobilizando-se as teorias da enunciação baseadas + na análise da relação de lugar entre as três pessoas verbais: “eu” (o um), “tu” + (o outro) e “Ele” (o Outro). A perversão surge então como uma negação da grande + estrutura, compensada por um inchaço da pequena, como se essa estrutura + secundária pudesse e devesse suportar sozinha o que está em jogo na grande. + Poderíamos falar aqui de uma translação do que está em jogo na estrutura + principal para a estrutura secundária. O que, provavelmente, explica a + seriedade com que o perverso maquina suas encenações, às vezes deploráveis, + como se ele ocupasse diante de seu alter ego o lugar do Outro. Os modos de operação individuais variariam de acordo com a ênfase dos caminhos do circuito de enunciação subjetiva. @@ -398,7 +398,7 @@ produção e o consumo capitalistas. Resumiria o livro com o trocadilho: "Sade, Smith e Lacan: um laço realmente estranho, mas não eterno". E poderíamos pensar em outros tipos de diagramas e máquinas possíveis para a constituição -da relação sujeito/objeto/outro, com Sujeito-Deus, Sujeito-Leviatã, e até de Sujeito como composto +da relação sujeito/objeto/outro, com Sujeito-Deus, Sujeito-Leviatã, e até de Sujeito como composto por redes de `eu <-> tu`, incluindo também outros seres. Teríamos assim a possibilidade de inúmeras montagens e configurações de redes relacionais, hierárquicas, anárquicas, poliárquicas... uma modelagem desse tipo poderia ajudar na análise de dinâmicas sociais. diff --git a/books/scifi/machine-stops.md b/books/scifi/machine-stops.md index 1da0e36..8dd3484 100644 --- a/books/scifi/machine-stops.md +++ b/books/scifi/machine-stops.md @@ -11,7 +11,7 @@ [...] Few travelled in these days, for, thanks to the advance of science, the earth - was exactly alike all over. + was exactly alike all over. [...] @@ -23,7 +23,7 @@ Beneath those corridors of shining tiles were rooms, tier below tier, reaching far into the earth, and in each room there sat a human being, eating, or - sleeping, or producing ideas. And buried deep in the hive was her own room. + sleeping, or producing ideas. And buried deep in the hive was her own room. [...] diff --git a/events/2012/cteme.md b/events/2012/cteme.md index 7b96bd2..eee4adf 100644 --- a/events/2012/cteme.md +++ b/events/2012/cteme.md @@ -1,4 +1,5 @@ [[!meta title="O Teste de Turing e a Tomada de Consciência"]] +[[!toc startlevel=2 levels=4]] <!-- _ _ _ _ _ @@ -28,10 +29,6 @@ ||||| --> -## Índice - -[[!toc levels=4]] - Dedicatória ----------- diff --git a/events/2018/cryptorave/hostil.md b/events/2018/cryptorave/hostil.md index 02fd6f9..a653bba 100644 --- a/events/2018/cryptorave/hostil.md +++ b/events/2018/cryptorave/hostil.md @@ -167,7 +167,7 @@ O fundamento da solidariedade é a **tensão** dinâmica entre egoísmo (cuidar receber cuidados) e altruísmo (cuidar de outrem, aceitar os cuidados de outrem). A isto chamaremos de _ajuda mútua._ -![Afresco egípcio sobre segurança aérea, séc. XX D.C.](images/egiptian-safety-sheet.png) +![Afresco egípcio sobre segurança aérea, séc. XX D.C.](images/egyptian-safety-sheet.png) Nota: essa figura é curiosa. Repare que o cuidado é associado a um papel usualmente considerado de feminino em tal sociedade. Ao mesmo tempo, o estado diff --git a/events/2018/cryptorave/hostil/images/egiptian-safety-sheet.png b/events/2018/cryptorave/hostil/images/egyptian-safety-sheet.png Binary files differindex 85bd240..85bd240 100644 --- a/events/2018/cryptorave/hostil/images/egiptian-safety-sheet.png +++ b/events/2018/cryptorave/hostil/images/egyptian-safety-sheet.png @@ -1,6 +1,6 @@ [[!meta title="Minutos de Sabedoria Punk"]] -[[!toc levels=4]] +[[!toc startlevel=2 levels=4]] A irreversibilidade da vida e outros fatos termodinâmicos: uma coleção de citações, trechos, versos, adágios, chistes, ironias e pessimismos. Muitas diff --git a/ikiwiki.yaml b/ikiwiki.yaml index 4780ec4..0be3737 100644 --- a/ikiwiki.yaml +++ b/ikiwiki.yaml @@ -1,10 +1,10 @@ # IkiWiki::Setup::Yaml - YAML formatted setup file # # Setup file for ikiwiki. -# +# # Passing this to ikiwiki --setup will make ikiwiki generate # wrappers and build the wiki. -# +# # Remember to re-run ikiwiki --setup any time you edit this file. # # name of the wiki @@ -44,6 +44,7 @@ add_plugins: - sidebar - teximg - favicon +- mathjax # plugins to disable disable_plugins: - openid @@ -90,7 +91,7 @@ umask: 2 # group for wrappers to run in #wrappergroup: ikiwiki # extra library and plugin directory -libdir: '' +libdir: 'lib' # environment variables ENV: {} # time zone name @@ -98,14 +99,15 @@ ENV: {} # regexp of normally excluded files to include include: ^\.htaccess$ # regexp of files that should be skipped -exclude: (?^i:(www|drafts)) +#exclude: (^(www|drafts|vendor).*) +exclude: (?^i:(www|drafts|vendor)) # specifies the characters that are allowed in source filenames wiki_file_chars: -[:alnum:]+/.:_ # allow symlinks in the path leading to the srcdir (potentially insecure) allow_symlinks_before_srcdir: 0 # cookie control cookiejar: - file: /home/rhatto/.ikiwiki/cookies + file: ~/file/blog/.ikiwiki/cookies # set custom user agent string for outbound HTTP requests e.g. when fetching aggregated RSS feeds useragent: ikiwiki/3.20141016.4 @@ -212,6 +214,7 @@ pingurl: [] # mdwn plugin # enable multimarkdown features? #multimarkdown: 0 +multimarkdown: 1 # disable use of markdown discount? #nodiscount: 0 diff --git a/lib/IkiWiki/Plugin/mathjax.pm b/lib/IkiWiki/Plugin/mathjax.pm new file mode 100755 index 0000000..99b74c3 --- /dev/null +++ b/lib/IkiWiki/Plugin/mathjax.pm @@ -0,0 +1,74 @@ +package IkiWiki::Plugin::mathjax; + +use warnings; +use strict; +use IkiWiki 3.00; +use MIME::Base64; + +# Strategy: +## - filter replaces normal TeX delimiters with imath and dmath directives +## (perhaps while considering a mathconf directive); also, it adds a script +## block if there is any math on the page relevant. +## - preprocess handles the directives themselves. +## +## Later: config hooks for mathjax script tag and mathjax config block +## + +sub import { + hook(type => "filter", id => "mathjax", call => \&filter); + hook(type => "format", id=>"mathjax", call=> \&format); +} + +sub format { + my %params = @_; + my $content = $params{content}; + return $content unless $content =~ /\!\!mathjaxbegin/; #]/{{ + $content =~ s{\!\!mathjaxbegin-i!! (.*?)\s\!\!mathjaxend-i\!\!}{'\('.decode_base64($1).'\)'}ges; #{ + $content =~ s{\!\!mathjaxbegin-d!! (.*?)\s\!\!mathjaxend-d\!\!}{'\['.decode_base64($1).'\]'}ges; #{ + my $scripttag = _scripttag(); + $content =~ s{(</body>)}{$scripttag\n$1}i; #}{ + return $content; +} + +sub filter (@) { + my %params=@_; + my $content = $params{content}; + return $content unless $content =~ /\$[^\$]+\$|\\[\(\[][\s\S]+\\[\)\]]/; + # first, handle display math... + $content =~ s{(?<!\\)\\\[(.+?)(?<!\\)\\\]}{_escape_mathjax('d', $1)}ges; #};[} + $content =~ s{(?<!\\)\$\$(.+?)(?<!\\)\$\$}{_escape_mathjax('d', $1)}ges; #};[} + # then, the inline math -- note that it must stay on one line + $content =~ s{(?<!\\)\\\((.+?)(?<!\\)\\\)}{_escape_mathjax('i', $1)}ge; #};[} + # note that the 'parsing' of $..$ is extremely fragile + $content =~ s{(?<!\\)\$(.+?)(?<!\\)\$}{_escape_mathjax('i', $1)}ge; #};[} + return $content; +} + +sub _escape_mathjax { + my ($mode, $formula) = @_; + my %modes = qw/i inline d display/; + my $directive = "!!mathjaxbegin-$mode!! "; + $formula =~ s/"/"/g; + $formula =~ s/&/&/g; #"/}[{ + $formula =~ s/</</g; + $formula =~ s/>/>/g; #{" + $directive .= encode_base64($formula, " "); + $directive .= "!!mathjaxend-$mode!!"; + return $directive; +} + +sub _scripttag { + my $config = 'TeX-AMS_HTML'; # another possibility: TeX-AMS-MML_HTMLorMML + return '<script type="text/x-mathjax-config">' + . 'MathJax.Hub.Config({ TeX: { equationNumbers: {autoNumber: "AMS"} } });' + . '</script>' + . '<script async="async" type="text/javascript" ' + # Serving MathJax script locally + #. 'src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.9/MathJax.js?config=' + #. 'src="/js/MathJax.js?config=' + . 'src="/vendor/MathJax/es5/tex-chtml.js?config=' + . $config + . '"></script>'; +} + +1; @@ -33,7 +33,7 @@ See [keys](/keys). ### Technology -* This is a [statically-generated website](/static). +* This is a [statically-generated website](/research/suckless/sites). * That tries to implement [IndieWebCamp principles](http://indiewebcamp.com/principles). <!-- * Using the same tags from [Fluxo de Links](https://links.fluxo.info) so diff --git a/research/computing/services.md b/research/computing/services.md index 7b8286d..15b5c8d 100644 --- a/research/computing/services.md +++ b/research/computing/services.md @@ -1,6 +1,8 @@ [[!meta title="Free and Open Source Services"]] -This is a FOSS listing for service hosting. Staying on this list doesn't mean +An awesome list of FOSS "services". + +This is a cureted FOSS listing for service hosting. Staying on this list doesn't mean that a given software is recommended or audited in the spirit of the [Franklin Street Statement on Freedom and Network Services](http://wiki.p2pfoundation.net/Franklin_Street_Statement_on_Freedom_and_Network_Services). @@ -39,7 +41,7 @@ Misc: * [BigBlue Button](http://www.bigbluebutton.org). * [Rocket.Chat](https://rocket.chat/#!). * [Mattermost](https://about.mattermost.com/). -* [Riot. Break through.](https://riot.im/). +* [Riot. Break through](https://riot.im/). * [Signal Server](https://github.com/whispersystems/signal-server). * [Wire Server](https://github.com/wireapp/wire-server). * [Katzenpost](https://katzenpost.mixnetworks.org/). @@ -135,7 +137,9 @@ Social networking * [RedMatrix](https://redmatrix.me/). * [Hubzilla](http://hubzilla.org/). * [commento: A lightweight, open source, tracking-free comment engine alternative to Disqus](https://github.com/adtac/commento) -* Calendar: [Demosphere](https://demosphere.net/en/content/download) with [browser extension](https://demosphere.net/en/content/browser-extension). +* Calendar: + * [Demosphere](https://demosphere.net/en/content/download) with [browser extension](https://demosphere.net/en/content/browser-extension). + * [Gancio](https://gancio.org/): a shared agenda for local communities. Timebanking ----------- @@ -197,8 +201,10 @@ Office * [Feng Office](http://www.fengoffice.com/). * [SocialCalc](https://www.socialtext.net/open/socialcalc) ([código](https://github.com/audreyt/socialcalc)). * [OBM - Open Business Management](http://obm.org). -* [Etherpad](http://etherpad.org/) ([puppet-etherpad](https://git.fluxo.info/?p=puppet-etherpad.git)). +* [Etherpad](http://etherpad.org/) ([puppet-etherpad](https://git.fluxo.info/?p=puppet-etherpad.git); [vim-etherpad](https://github.com/guyzmo/vim-etherpad) as a proof-of-concept). * [Ethercalc](http://www.ethercalc.org) ([código](https://github.com/audreyt/ethercalc)). +* [HedgeDoc](https://docs.hedgedoc.org/): create real-time collaborative markdown notes. +* [HackMD - Collaborative Markdown Knowledge Base](https://hackmd.io/#). * [LastCalc Is Open Sourced](http://science.slashdot.org/story/12/03/10/186201/lastcalc-is-open-sourced). * [COMT](http://www.co-ment.org/). * [UNG Project](http://www.ung-project.org). @@ -225,7 +231,8 @@ Office * [Discourse](https://www.discourse.org/): "civilized discussion for your community". * [mat2 web](https://dustri.org/b/mat2-for-the-web.html). -Finance: +Finance +------- * [Timestrap: time tracking and invoicing](https://github.com/overshard/timestrap). * [ihatemoney - Account manager](https://ihatemoney.org/) ([code](https://github.com/spiral-project/ihatemoney)). @@ -234,8 +241,9 @@ Finance: Conferences ----------- -* [EasyChair Smart CFP](https://easychair.org/cfp/). +* [pretalx — CfP and scheduling for conferences](https://pretalx.com): From Call for Papers to schedule – build your conference! * [frab - conference management system](https://frab.github.io/frab/) with [ANGELSYSTEM - online tool for coordinating helpers and work shifts on large events](https://engelsystem.de/index_en.html). +* [EasyChair Smart CFP](https://easychair.org/cfp/). URL shorteners -------------- @@ -275,6 +283,8 @@ Pastebin Downloaders ----------- +* [Lufi](https://framagit.org/fiat-tux/hat-softwares/lufi): E2E with one-time download option! +* [Jirafeau](https://gitlab.com/mojo42/Jirafeau). * [coquelicot](https://coquelicot.potager.org/). * [filetea](http://packages.debian.org/wheezy/filetea). * [jyraphe](http://home.gna.org/jyraphe/). @@ -320,6 +330,7 @@ Dynamic: * [Coppermine](http://coppermine-gallery.net). * [Zenphoto](http://www.zenphoto.org). * [Plogger](http://www.plogger.org). +* [thumbor](https://www.thumbor.org/): open-source smart on-demand image cropping, resizing and filters. Static: @@ -385,6 +396,13 @@ Mobilization * [LimeSurvey](http://www.limesurvey.org). * [Loomio](https://github.com/loomio/loomio). +Decision-making +--------------- + +* [Decidim](https://decidim.org/): digital platform for citizen participation. + Free/libre, open and safe technology. With all democratic guarantees. + Reprogramming democracy is now possible with Decidim. + Email ----- @@ -411,8 +429,9 @@ Bookmarks * [SemanticScuttle](http://semanticscuttle.sourceforge.net/). * [QStode](https://github.com/piger/qstode). * [Bookie](https://github.com/bookieio/Bookie). -* [wallabag: a self hostable application for saving web pages](https://wallabag.org/en). +* [wallabag: a self hostable application for saving web pages](https://wallabag.org/en) with [wallabag-cli](https://github.com/Nepochal/wallabag-cli). * [prismo](https://gitlab.com/mbajur/prismo). +* [linkding: Self-hosted bookmark service](https://github.com/sissbruecker/linkding). Libraries --------- @@ -450,12 +469,22 @@ Geo * [QGIS](http://qgis.org/en/site/). * [GeoServer](http://geoserver.org/). +* [GeoNode](https://geonode.org/). +* [Mapeo](https://www.digital-democracy.org/mapeo/) ([docs](https://docs.mapeo.app/)). Radio ----- * [OpenWebRX](https://sdr.hu/openwebrx) ([código](https://github.com/simonyiszk/openwebrx)). +Education +--------- + +* [Openki](https://gitlab.com/Openki/Openki/): Course-Organization-Platform: A + tool to build up and organize local communities – Open education for real. +* [Kiwix lets you access free knowledge – even offline](https://www.kiwix.org/) with + [kiwix-serve](https://www.kiwix.org/en/downloads/kiwix-serve/). + References ---------- diff --git a/research/computing/suckless.md b/research/computing/suckless.md index 853f2c8..6ff9c5a 100644 --- a/research/computing/suckless.md +++ b/research/computing/suckless.md @@ -8,7 +8,7 @@ 5. Any given program will expand to fill all available memory. 6. The value of a program is proportional the weight of its output. 7. Program complexity grows until it exceeds the capability of - the programmer who must maintain it. + the programmer who must maintain it. -- fortune(6) diff --git a/research/computing/suckless/sites.md b/research/computing/suckless/sites.md index 67149d5..47eb18c 100644 --- a/research/computing/suckless/sites.md +++ b/research/computing/suckless/sites.md @@ -56,6 +56,13 @@ You can create passwordless SSH keys and use [rrsync](http://www.guyrutenberg.co Now simply run `make web_deploy` with the above mentioned `Makefile` do sync your static site! +## MathJax + +* [Setup Instructions for MathJax on Ikiwiki](https://www.math.cmu.edu/~gautam/sj/blog/20130930-ikiwiki/010-setup.html). +* [GitHub - bk/ikiwiki-plugin-mathjax: MathJax plugin for IkiWiki](https://github.com/bk/ikiwiki-plugin-mathjax). +* [GitHub - mathjax/MathJax: Beautiful and accessible math in all browsers](https://github.com/mathjax/MathJax). +* [MathJax documentation](https://docs.mathjax.org). + ## Ikiwiki references * [Ikiwiki](http://ikiwiki.info). @@ -65,9 +72,9 @@ Now simply run `make web_deploy` with the above mentioned `Makefile` do sync you # Alternatives -* [The updated big list of static website generators for your site, blog or wiki](https://iwantmyname.com/blog/2014/05/the-updated-big-list-of-static-website-generators-for-your-site-blog-or-wiki). -* [Top Open-Source Static Site Generators - StaticGen](https://www.staticgen.com/). * [Static Site Generators](https://staticsitegenerators.net/). +* [Top Open-Source Static Site Generators - StaticGen](https://www.staticgen.com/). +* [The updated big list of static website generators for your site, blog or wiki](https://iwantmyname.com/blog/2014/05/the-updated-big-list-of-static-website-generators-for-your-site-blog-or-wiki). * [Static Site Generators at GitHub](https://github.com/skx/static-site-generators). * [Replacing Jekyll with Pandoc and a Makefile](https://tylercipriani.com/2014/05/13/replace-jekyll-with-pandoc-makefile.html). * [Brane Dump: Static Comments in Jekyll](http://www.hezmatt.org/~mpalmer/blog/2011/07/19/static-comments-in-jekyll.html). @@ -78,13 +85,18 @@ Now simply run `make web_deploy` with the above mentioned `Makefile` do sync you * [Grav](http://getgrav.org/). * [Hakyll](http://jaspervdj.be/hakyll/) ([package](https://packages.debian.org/sid/libghc-hakyll-dev)). * [Jekyll](http://jekyllrb.com/) ([package](https://packages.debian.org/stable/jekyll)). +* [MkDocs](https://www.mkdocs.org/#building-the-site) +* [Sphinx](http://sphinx-doc.org/) ([package](https://packages.debian.org/stable/python-sphinx)). +* [Lektor](https://www.getlektor.com/) ([package](https://packages.debian.org/bullseye/lektor)). * [Static site generators for building web sites](https://lwn.net/Articles/541299/). * [Pelican Static Site Generator, Powered by Python](http://blog.getpelican.com/) ([package](https://packages.debian.org/sid/python-pelican)). * [Middleman: Hand-crafted frontend development](https://middlemanapp.com/). * [Juvia: a commenting server similar to Disqus and IntenseDebate](https://github.com/phusion/juvia). * [gitit](https://github.com/jgm/gitit/tree/master/). -* [Sphinx](http://sphinx-doc.org/) ([package](https://packages.debian.org/stable/python-sphinx)). * [Utterson: a minimal static blog generator written using old-school unix tools (make, ksh, m4, awk, procmail and a pinch of elisp)](https://github.com/stef/utterson). * [werc - A sane web anti-framework](http://werc.cat-v.org/). * [cfenollosa/bashblog: A single Bash script to create blogs. Download, run, write, done!](https://github.com/cfenollosa/bashblog). * [blogofile](https://packages.debian.org/stable/blogofile) +* [tkluysk/yaml-to-html: transform a folder of markdown files with yaml frontmatter to html](https://github.com/tkluysk/yaml-to-html) +* [maxhoffmann/yaml-markdown-to-html: transform a folder of markdown files with yaml frontmatter to html](https://github.com/maxhoffmann/yaml-markdown-to-html) +* [brunobord/static-markdown: A static HTTP server, with markdown rendering mechanism](https://github.com/brunobord/static-markdown) diff --git a/research/computing/thinkpad.md b/research/computing/thinkpad.md index e873c74..fa7a04d 100644 --- a/research/computing/thinkpad.md +++ b/research/computing/thinkpad.md @@ -179,6 +179,29 @@ Esta seção inclui modelos "homologados" e também em pesquisa. * Problemas: * [Buttonless Touchpad](https://www.thinkwiki.org/wiki/Buttonless_Touchpad). +### T480 + +* [Category:T480 - ThinkWiki](https://www.thinkwiki.org/wiki/Category:T480) +* [ThinkPad T480 - ThinkPad_T480_datasheet_EN.pdf](https://psref.lenovo.com/syspool/Sys/PDF/datasheet/ThinkPad_T480_datasheet_EN.pdf) +* [Lenovo ThinkPad T480 | 14" Business Laptop with 8th Generation Intel® Core™ i7 | Lenovo US | Lenovo US](https://www.lenovo.com/us/en/p/laptops/thinkpad/thinkpadt/thinkpad-t480/22tp2tt4800) + +### X280 + +* [Category:X280 - ThinkWiki](https://www.thinkwiki.org/wiki/Category:X280) +* [ThinkPad_X280_Spec.PDF](https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_X280/ThinkPad_X280_Spec.PDF) +* [PSREF ThinkPad ThinkPad X280](https://psref.lenovo.com/Product/ThinkPad/ThinkPad_X280) +* Drawback: memory is soldered: [How to upgrade x280 Memory-English Community](https://forums.lenovo.com/t5/ThinkPad-X-Series-Laptops/How-to-upgrade-x280-Memory/m-p/4601913) + +### T14 + +* [Category:T14 - ThinkWiki](https://www.thinkwiki.org/wiki/Category:T14) +* [ThinkPad T14 Gen 1 (Intel) - ThinkPad_T14_Gen_1_Intel_datasheet_EN.pdf](https://psref.lenovo.com/syspool/Sys/PDF/datasheet/ThinkPad_T14_Gen_1_Intel_datasheet_EN.pdf) +* [T14 Gen 1 and P14s Gen 1 Hardware Maintenance Manual - t14_gen1_p14s_gen1_hmm_en.pdf](https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen1_p14s_gen1_hmm_en.pdf) +* [laptops and netbooks :: thinkpad t series laptops :: thinkpad t14 gen 2 type 20w0 20w1contentdetail - Lenovo Support AU](https://pcsupport.lenovo.com/au/en/products/laptops-and-netbooks/thinkpad-t-series-laptops/thinkpad-t14-gen-2-type-20w0-20w1) +* [Lenovo ThinkPad T14 Gen1 User Guide - Manuals+ - thinkpad-t14-gen1-manual.pdf](https://manuals.plus/lenovo/thinkpad-t14-gen1-manual.pdf) +* [(English) User Guide (HTML) - ThinkPad T14, T15, P14s, P15s - Lenovo Support AU](https://pcsupport.lenovo.com/au/en/products/laptops-and-netbooks/thinkpad-p-series-laptops/thinkpad-p15s-type-20t4-20t5/manuals/um923720-english-user-guide-html-thinkpad-t14-t15-p14s-p15s) +* [Removal and Replacement Videos - ThinkPad T14 Gen 1 (20S0, 20S1, 20S2, 20S3, 20UD, 20UE), P14s Gen1 (20S4, 20S5), T14 AMD Gen 1 (20UD, 20UE ), P14s AMD Gen 1 (20Y1, 20Y2), T14 Gen 2 (20W0, 20W1, 20XK, 20XL), P14s Gen 2 (20VX, 20VY, 21A0, 21A1) - Lenovo Support US](https://pcsupport.lenovo.com/us/en/solutions/ht510512-removal-and-replacement-videos-thinkpad-t14-gen-1-thinkpad-p14s-gen-1-20s0-20s1-20s2-20s3-20s4-20s5). + ## Memória * [Memory Compatibility - Notebooks](https://support.lenovo.com/br/en/solutions/pd012623#x). @@ -187,7 +210,7 @@ Esta seção inclui modelos "homologados" e também em pesquisa. * [Libreboot – Hardware compatibility list](https://libreboot.org/docs/hcl/). -# Firmware oficial +## Firmware oficial * http://www.thinkwiki.org/wiki/Installing_Gentoo_on_a_ThinkPad_X220 * https://bbs.archlinux.org/viewtopic.php?id=122352 @@ -208,3 +231,5 @@ Exemplo: * [Lenovo Laptop Repair - iFixit](https://www.ifixit.com/Device/Lenovo_Laptop). * [IBM Laptop Repair - iFixit](https://www.ifixit.com/Device/IBM_Laptop). * [CPU-Upgrade](http://www.cpu-upgrade.com). +* [Welcome to ThinkPads.org! - ThinkPads.org](https://libthinkpad.github.io/projects/) +* [ThinkPad FRU parts catalog - ThinkPads.org](https://libthinkpad.github.io/fru/) diff --git a/research/computing/token.md b/research/computing/token.md index 9901faa..dbe0e4f 100644 --- a/research/computing/token.md +++ b/research/computing/token.md @@ -2,58 +2,77 @@ Sobre tokens criptográficos USB. -## Gnuk +## Intro + +* [ImperialViolet - Security Keys](https://www.imperialviolet.org/2017/08/13/securitykeys.html). + +## FST-01: Gnuk and Neug + +### FST-01 + +* [FST-01](https://www.gniibe.org/FST-01/fst-01.html "FST-01") (Gniibe) +* [FST-01](https://seeeddoc.github.io/FST-01/ "FST-01") (Seedstudio) +* [unixjazz / DIYNuk · GitLab](https://gitlab.com/unixjazz/DIYNuk "unixjazz / DIYNuk · GitLab") +* [» Reading and Writing Firmware on an STM32 using SWD](https://cybergibbons.com/hardware-hacking/reading-and-writing-firmware-on-an-stm32-using-swd/ "» Reading and Writing Firmware on an STM32 using SWD") + * [Serial Wire Debug (SWD) - Silicon Labs](https://community.silabs.com/s/article/serial-wire-debug-swd-x?language=en_US "Serial Wire Debug (SWD) - Silicon Labs") + * [ST-LINK/V2 - ST-LINK/V2 in-circuit debugger/programmer for STM8 and STM32 - STMicroelectronics](https://www.st.com/en/development-tools/st-link-v2.html "ST-LINK/V2 - ST-LINK/V2 in-circuit debugger/programmer for STM8 and STM32 - STMicroelectronics") + * [STM8S-DISCOVERY - Discovery kit with STM8S105C6 MCU - STMicroelectronics](https://www.st.com/en/evaluation-tools/stm8s-discovery.html "STM8S-DISCOVERY - Discovery kit with STM8S105C6 MCU - STMicroelectronics") + * [FST-01 gnuk firmware update via USB - Raymii.org](https://raymii.org/s/tutorials/FST-01_firmware_upgrade_via_usb.html "FST-01 gnuk firmware update via USB - Raymii.org") + * [FST-01 - Seeed Wiki](http://wiki.seeed.cc/FST-01/). + * [Questions - FST-01 Q&A Forum](http://no-passwd.net/askbot/questions/). + * [Programming the FST-01 (gnuk) with a Bus Pirate + OpenOCD](https://www.earth.li/~noodles/blog/2015/08/program-fst01-with-buspirate.html). + +### Gnuk * [Free Software Initiative of Japan - gnuk](http://www.fsij.org/category/gnuk.html) * [Gnuk Documentation — Gnuk Documentation 1.0 documentation](http://www.fsij.org/doc-gnuk/) * [Gnuk - Noisebridge](https://noisebridge.net/wiki/Gnuk). -* [FST-01 - Seeed Wiki](http://wiki.seeed.cc/FST-01/). -* [Questions - FST-01 Q&A Forum](http://no-passwd.net/askbot/questions/). -* [Programming the FST-01 (gnuk) with a Bus Pirate + OpenOCD](https://www.earth.li/~noodles/blog/2015/08/program-fst01-with-buspirate.html). * [Gnuk Token and GnuPG scdaemon](https://fosdem.org/2018/schedule/event/hwenablement_gnuk_token_and_gnupg_scdaemon/). -* [FST-01 gnuk firmware update via USB](https://raymii.org/s/tutorials/FST-01_firmware_upgrade_via_usb.html). * [Gnuk source code](https://salsa.debian.org/gnuk-team/gnuk/gnuk). -* Threat modeling: - * [How safe is Gnuk against side channel attacks, USB sniffer, or electron/tunneling microscope? - FST-01 Q&A Forum](http://no-passwd.net/askbot/question/33/how-safe-is-gnuk-against-side-channel-attacks-usb/). - * [How does Gnuk protect against attacks to extract private keys? - FST-01 Q&A Forum](http://no-passwd.net/askbot/question/32/how-does-gnuk-protect-against-attacks-to-extract/). - * [What types of risk are more likely? What's "best practice" against that? - FST-01 Q&A Forum](http://no-passwd.net/askbot/question/68/what-types-of-risk-are-more-likely-whats-best/). - -## Safenet eToken E5110 -No Debian, instale o [MUSCLE](https://pcsclite.alioth.debian.org/): +### Neug - sudo apt install libccid pcsc-tools pcscd pcscd libpcsclite1 +* [NeuG, a True Random Number Generator Implementation](https://www.gniibe.org/memo/development/gnuk/rng/neug.html "NeuG, a True Random Number Generator Implementation") +* [Gnuk / gnuk / neug · GitLab](https://salsa.debian.org/gnuk-team/gnuk/neug "Gnuk / gnuk / neug · GitLab") + * [NeuG USB True Random Number Generator | Hacker News](https://news.ycombinator.com/item?id=16080019 "NeuG USB True Random Number Generator | Hacker News") +* [Gnuk, NeuG, FST-01](https://incenp.org/dvlpt/docs/fsij-gnuk-neug/index.html "Gnuk, NeuG, FST-01") + * [How can I install Gnuk on FST-01 with NeuG 1.0.5?](http://www.gniibe.org/FST-01/q_and_a/gnuk_install_over_neug.html "How can I install Gnuk on FST-01 with NeuG 1.0.5?") + * [udev-rules for my FST-01 gnuk security token](https://lists.gnu.org/archive/html/help-guix/2018-07/msg00051.html "udev-rules for my FST-01 gnuk security token") + * [Device Configuration for Gnuk Token with libusb — Gnuk Documentation 1.0 documentation](http://www.fsij.org/doc-gnuk/udev-rules.html "Device Configuration for Gnuk Token with libusb — Gnuk Documentation 1.0 documentation") + * [How to install or update NeuG firmware with STLink/v2 debugger on FST-01](https://demsh.org/post/neug-memo/ "How to install or update NeuG firmware with STLink/v2 debugger on FST-01") + * [How can I use NeuG standalone device on my Debian box?](https://www.gniibe.org/FST-01/q_and_a/neug-standalone-device.html "How can I use NeuG standalone device on my Debian box?") + * [linux - Using the NeuG TRNG with /dev/random? - Unix & Linux Stack Exchange](https://unix.stackexchange.com/questions/354188/using-the-neug-trng-with-dev-random#433397 "linux - Using the NeuG TRNG with /dev/random? - Unix & Linux Stack Exchange") -Plugue a parada e execute: +### Threat modeling - opensc-tool --list-readers +* [How safe is Gnuk against side channel attacks, USB sniffer, or electron/tunneling microscope? - FST-01 Q&A Forum](http://no-passwd.net/askbot/question/33/how-safe-is-gnuk-against-side-channel-attacks-usb/). +* [How does Gnuk protect against attacks to extract private keys? - FST-01 Q&A Forum](http://no-passwd.net/askbot/question/32/how-does-gnuk-protect-against-attacks-to-extract/). +* [What types of risk are more likely? What's "best practice" against that? - FST-01 Q&A Forum](http://no-passwd.net/askbot/question/68/what-types-of-risk-are-more-likely-whats-best/). -## SafeNet Authentication Client +### Programando o FST-01 -Para uso no mundo corporativo e institucional, como OAB e afins. Você não vai -querer usar os drivers proprietários a não ser que seja forçado, certo? +Agradecimento ao `unixjazz` do projeto [DIYNuk](https://gitlab.com/unixjazz/DIYNuk) por fornecer estas instruções! -Curioso que no fim das contas a OAB conseguiu seu lugar ao sol no mercado -da certificação digital apesar da implantação do modelo governamental escolhido -para o certificado raíz brasileiro, história contada no livro -[Leviatã Eletrônico](http://www.scielo.br/scielo.php?script=sci_arttext&pid=S1517-45222010000300013). +Roteiro baseado no programador (STLink) ligado a um STM8 com os pinos soldados: -Enfim, pra usar o eToken E5110 pra assinar documentos no navegador você -precisará de drivers específicos e proprietários. +1. Ligar ambas as pacas conforme [este diagrama dos + pinos](https://www.gniibe.org/memo/development/gnuk/hardware/stlinkv2-stm8s-discovery.html). +2. Configurar o ST-Link (programador) no PC. Instruções + [aqui](https://www.gniibe.org/FST-01/q_and_a/swd-debugger.html). +3. Compilar (mesmo procedimento para Gnuk e Neug (se diz Noisy com sotaque + japones)) conforme [estas instruções](https://www.gniibe.org/memo/development/gnuk/gnuk-building-for-stm32-part-of-stm8s-discovery-kit.html). -Aparentemente a [Gemalto comprou a SafeNet](http://www.gemalto.com/press/Pages/Gemalto-to-acquire-SafeNet,the-worldwide-leader-in-data-and-software-protection.aspx) -e depois ficou muito mais difícil para baixar o driver do eToken E5110, que além de ser proprietário ainda ficou privativo! -Maluco fez [até script](https://gist.github.com/dex4er/1354710) pra automatizar essa zica. -[Aqui](https://site.solutinet.com.br/2015/manuais/instaladores/) há versões recentes das bibliotecas e do cliente de autenticação -proprietário (dica [daqui](https://diadialinux.wordpress.com/2017/03/02/instalar-etoken-alladin-usar-sites-do-governo-com-certificado-digital-e-assinar-documentos-pdf/)). +Em geral, o procedimento e' o seguinte: -Referêcias: +1. Instalar o [ultimo NeuG do repo do Debian](https://salsa.debian.org/gnuk-team/gnuk/neug). +2. Instalar o GNU Toolchan for ARM (4.5 ou maior). +3. Instalar o OpenOCD (pacote do Debian). +4. Compilar o NeuG. +5. Configurar o ST-Link com as seguintes regras do udev (por exemplo em `/etc/udev/rules.d/10-stlink.rules`): -* [Token-Based Authentication | SafeNet eToken 5110 USB Authenticator](https://safenet.gemalto.com/multi-factor-authentication/authenticators/pki-usb-authentication/etoken-5110-usb-token/) -* [Guia](http://poddarprofessional.com/demo/DIGITAL%20SIGNATURE/UTILITIES/E-token%20Drivers%20For%20LINUX/eToken_PKI_Client_Linux_4_55_Reference_Guide.pdf). -* [eToken Pro 72k and Linux - r3blog](https://r3blog.nl/index.php/etoken-pro-72k/). -* [Install SafeNet eToken PRO on Ubuntu 14.04 LTS](https://www.vleeuwen.net/2015/05/install-safenet-etoken-pro-on-ubuntu-14-04-lts). + ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="0483", \ + ATTR{idProduct}=="3748", GROUP="tape", MODE="664", SYMLINK+="stlink" -## Misc - -* [ImperialViolet - Security Keys](https://www.imperialviolet.org/2017/08/13/securitykeys.html). +6. Plugar o ST-Link, rodar o OpenOCD e escrever o binario na flash do STM8 + conforme [este procedimento](https://www.gniibe.org/memo/development/gnuk/gnuk-installation-to-stm32-part-of-stm8s-discovery-kit.html) +7. Pronto! Agora basta [ler a serial](https://www.gniibe.org/FST-01/q_and_a/neug-standalone-device.html). diff --git a/research/economics/valor-social.md b/research/economics/valor-social.md index f12280c..e3b198f 100644 --- a/research/economics/valor-social.md +++ b/research/economics/valor-social.md @@ -18,7 +18,7 @@ há necessariamente uma cultura de passar para frente a ajuda recebida. Por isso, estabelecemos neste texto uma sugestão de acordos de ajuda múltipla tanto como proposta de prática e sobretudo como reflexão da distância que os grupos sociais se encontram com relação a um regime de -dádivas e não-escassez. +dádiva e não-escassez. O acordo de ajuda múltipla ========================== @@ -118,10 +118,10 @@ perguntas, podemos recorrer a um mínimo de sistematização. Considerando um grupo social de _m_ pessoas, podemos definir a função *valor social* como sendo -[[!teximg code="S = \displaystyle\sum_{p=1}^{m}\frac{\left(p\ n_p\right)^{v}}{mr}"]] +$$S = \displaystyle\sum_{p=1}^{m}\frac{\left(p\ n_p\right)^{v}}{mr}$$ -onde [[!teximg code="n_p"]] é a quantidade de acordos existentes envolvendo _p_ -pessoas[4], cada acordo com viralidade[5] _v_ e _r < m_ é o número de +onde $n_p$ é a quantidade de acordos existentes envolvendo $p$ +pessoas[4], cada acordo com viralidade[5] $v$ e $r < m$ é o número de pessoas que *poderiam* [6] ter efetuado acordos mas que ficaram de fora (isto é, não fizeram acordo nenhum). O valor social assim definido exibe uma série de propriedades interessantes sob o ponto de vista das @@ -137,15 +137,15 @@ múltiplas partes possui maior ação coletiva (maior participação coletiva, maior coletividade) do que uma sociedade com acordos entre apenas poucas partes. -Já a quantidade _m_ de pessoas do grupo e o total _r_ de pessoas que não +Já a quantidade $m$ de pessoas do grupo e o total $r$ de pessoas que não participaram de nenhum tipo de acordo contribuem na diminuição do valor -social: se poucas pessoas (em relação ao total _m_) fazem acordo, temos -uma sociedade com pouca ajuda múltipla e, portanto, para que _S_ atinja -valores significativos, é preciso que _m_ se torne quantitativamente -menor em relação aos valores dos componentes [[!textimg code="\left(p\ n_p\right)^{v}"]]. -O mesmo vale para _r_: os componentes devem ser mais significativos do +social: se poucas pessoas (em relação ao total $m$) fazem acordo, temos +uma sociedade com pouca ajuda múltipla e, portanto, para que $S$ atinja +valores significativos, é preciso que $m$ se torne quantitativamente +menor em relação aos valores dos componentes $\left(p\ n_p\right)^{v}$. +O mesmo vale para $r$: os componentes devem ser mais significativos do que a quantidade de pessoas que poderiam estar em acordos mas que -ficaram de fora, ou seja, _S_ leva em conta a inclusão ou exclusão +ficaram de fora, ou seja, $S$ leva em conta a inclusão ou exclusão social da ação coletiva[7]. Por fim, a viralidade potencializa a multiplicação de acordos: quanto @@ -165,25 +165,25 @@ sistemas dinâmicos. Por simplificação, podemos reescrever a equação anterior como -[[!teximg code="S = k\displaystyle\sum_{p=1}^{m}\left(p\ n_p\right)^{v}"]] +$$S = k\displaystyle\sum_{p=1}^{m}\left(p\ n_p\right)^{v}$$ -onde [[!teximg code="k = \frac{1}{mr}"]]. É claro que o valor de _k_ +onde $k = \frac{1}{mr}$. É claro que o valor de $k$ pode mudar num dado grupo social – por exemplo: mais pessoas ingressando ou saindo do grupo ou então com um aumento ou diminuição de protagonistas de acordos – mas podemos considerá-lo como constante num dado momemto, ou seja, -[[!teximg code="k = k(t)"]] e independente de outras variáveis. +$k = k(t)$ e independente de outras variáveis. O que realmente nos interessa agora, no entanto, é que chega um momento em que o grupo social está com tantos acordos que, da forma como -definimos na equação [eq:simples], _S_ começa a crescer absurdamente e +definimos na equação [eq:simples], $S$ começa a crescer absurdamente e já não passa a representar o valor efetivo de um corpo social onde a ajuda múltipla se faz presente. Em outras palavras: chega um momento em que as pessoas já estão tão endividadas de acordos a cumprir que mais dívidas não afetarão consideravelmente no seu comportamento de ajuda -múltipla. Para refrear o crescimento indiscriminado de _S_, +múltipla. Para refrear o crescimento indiscriminado de $S$, redefiniremos nossa função como -[[!teximg code="S = k\ ln\displaystyle\sum_{p=1}^{m}\left(p\ n_p\right)^{v}"]] +$$S = k\ ln\displaystyle\sum_{p=1}^{m}\left(p\ n_p\right)^{v}$$ onde _ln_ cumpre um amortecimento no crescimento da somatória, mostrando que o valor efetivo do grupo cresce logaritmicamente: temos um rápido @@ -191,16 +191,16 @@ crescimento do valor conforme os acordos se iniciam e se multiplicam e, conforme o endividamento social cresce, a sociedade atinge patamares de valor altos demais para que um maior acréscimo se torne significativo. -Temos que, pela própria definição, _S_ é uma função de estado, uma vez +Temos que, pela própria definição, $S$ é uma função de estado, uma vez que, definido um grupo social e suas interações a partir das variáveis -_n_, _m_, _v_, _r_, etc, temos que _S_ é um indicativo do estado do +$n$, $m$, $v$, $r$, etc, temos que $S$ é um indicativo do estado do sistema – indicando, por exemplo, se ele possui mais ou menos acordos (e qual a potência e alcance dos acordos) do que outro grupo social igualmente caracterizado. Além disso, obedece a -[[!teximg code="\frac{dS}{dt} \geq 0"]] +$$\frac{dS}{dt} \geq 0$$ -Portanto, chamaremos nossa última definição de _S_ (equação [eq:valor]) +Portanto, chamaremos nossa última definição de $S$ (equação [eq:valor]) como *entropia econômica do grupo social*. Tal entropia mede, inicialmente, *o grau de endividamento do corpo social.* O endividamento é então a única forma de acúmulo possível: uma vez que alguém ajuda @@ -231,8 +231,8 @@ tem um aumento indesejável, aqui se torna o comportamento almejado. Sendo os acordos diretos, isto é, não mediados, temos ainda mais descontrole: é importantíssimo que tais acordos não sejam mediados por bancos de dados. Por banco de dados entendemos qualquer iniciativa de -tentar *efetivamente* calcular _S_ para um dado grupo social (e não o -registro pessoal que cada indivíduo mantiver a respeitodos acordos que +tentar *efetivamente* calcular $S$ para um dado grupo social (e não o +registro pessoal que cada indivíduo mantiver a respeito dos acordos que participou). A mera existência de um banco de dados centralizado capaz de calcular a cada instante o valor social tem os seguintes riscos: @@ -254,7 +254,7 @@ de calcular a cada instante o valor social tem os seguintes riscos: É com esse sentido de oposição aos bancos de dados que estabelecemos o conceito de valor social: não nos interessa calcular efetivamente o -valor de _S_ para um dado grupo social e muito menos caracterizar cada +valor de $S$ para um dado grupo social e muito menos caracterizar cada grupo em função desses parâmetros, o que além de policialesco não representa o real valor social do grupo (afinal, nem discutimos as diferenças qualitativas de cada acordo). Queremos, ao contrário, mostrar @@ -287,7 +287,7 @@ da rede? E no caso de grupos em conflito interno? Estas são apenas sugestões de desdobramentos possíveis: convidamos todas as pessoas que queiram contribuir para a análise de regimes econômicos fora do mercado para que pensem conjuntamente no que aqui foi meramente -delineado. A experimentação também é encorajada: sem ela, toda esta de +delineado. A experimentação também é encorajada: sem ela, toda esta discussão não passa de uma teoria descolada dos grupos sociais. Referências @@ -305,30 +305,30 @@ Referências ou apoio mútuo (mas que eventualmente possa ter o mesmo significado). -2. É claro que o valores de _v_ podem ser estipulados em cada acordo. +2. É claro que o valores de $v$ podem ser estipulados em cada acordo. 3. Por *conservar valor* não queremos dizer que a moeda não sofre valorização e desvalorização, mas sim que a moeda “congela” trabalho. -4. Começamos nossa somatória com _p = 1_ pois, apesar de ser um caso +4. Começamos nossa somatória com $p = 1$ pois, apesar de ser um caso em princípio bizarro (uma pessoa fazendo acordo consigo mesmo), não deixa de ser uma possibilidade: posso, por exemplo, fazer um acordo comigo mesmo e, caso o cumpra, ajudarei mais pessoas, sendo caso clássico disso é a solidariedade de ex-viciados, por exemplo. Outro - argumento para manter _p = 1_ é a simplicidade. + argumento para manter $p = 1$ é a simplicidade. 5. Poderíamos, é claro, supor um sistema onde cada acordo tivesse uma - viralidade _v_ própria, mas a complexidade do cálculo seria + viralidade $v$ própria, mas a complexidade do cálculo seria desnecessária para esta primeira exposição do assunto. -6. Que fique claro: _r_ não inclui pessoas que não podem ajudar, mas +6. Que fique claro: $r$ não inclui pessoas que não podem ajudar, mas apenas as que podem mas que ficaram de fora dos acordos. -7. Alternativamente, poderíamos definir o divisor como _m^r_ ao invés - de _mr_, o que faria com que _S_ fosse muito mais sensível à +7. Alternativamente, poderíamos definir o divisor como $m^r$ ao invés + de $mr$, o que faria com que $S$ fosse muito mais sensível à inclusão ou exclusão social. Optamos, no entanto, por uma abordagem - em que _m_ e _r_ contribuem com igual teor. + em que $m$ e $r$ contribuem com igual teor. 8. Num sistema mais próximo da realidade teríamos trocentas outras variáveis. diff --git a/research/economics/valor-social/valor-social.dvi b/research/economics/valor-social/valor-social.dvi Binary files differindex ef3e8d3..6153ed6 100644 --- a/research/economics/valor-social/valor-social.dvi +++ b/research/economics/valor-social/valor-social.dvi diff --git a/research/economics/valor-social/valor-social.pdf b/research/economics/valor-social/valor-social.pdf Binary files differindex 0618563..8258df4 100644 --- a/research/economics/valor-social/valor-social.pdf +++ b/research/economics/valor-social/valor-social.pdf diff --git a/research/economics/valor-social/valor-social.tex b/research/economics/valor-social/valor-social.tex index 58f97c3..30a4475 100644 --- a/research/economics/valor-social/valor-social.tex +++ b/research/economics/valor-social/valor-social.tex @@ -1,7 +1,8 @@ \documentclass[a4paper]{article} \usepackage[brazilian]{babel} -\usepackage[latin1]{inputenc} +\usepackage[utf8]{inputenc} \usepackage[dvips]{graphics} +\usepackage[ddmmyyyy]{datetime} \setlength\topmargin{0.3in} \setlength\headheight{0in} \setlength\headsep{0in} @@ -12,6 +13,8 @@ \title{A ajuda múltipla e o valor social} \author{Silvio Rhatto (rhatto em riseup.net)} +\newdate{date}{26}{06}{2008} +\date{\displaydate{date}} \begin{document}\label{start} \maketitle @@ -22,7 +25,7 @@ Procurando resolver um problema prático, este texto sistematiza uma forma de pr \section{Motivação} -Em geral, quando ajudamos alguém (principalmente quando ensinamos algo), não há muita garantia que a pessoa ajudada passará a idéia pra frente, seja ajudando outrem ou passando o conhecimento adiante. Mesmo em coletivos horizontais, não-hierárquicos e baseados na ajuda mútua, não há necessariamente uma cultura de passar para frente a ajuda recebida. Por isso, estabelecemos neste texto uma sugestão de acordos de ajuda múltipla tanto como proposta de prática e sobretudo como reflexão da distância que os grupos sociais se encontram com relação a um regime de dádivas e não-escassez. +Em geral, quando ajudamos alguém (principalmente quando ensinamos algo), não há muita garantia que a pessoa ajudada passará a idéia pra frente, seja ajudando outrem ou passando o conhecimento adiante. Mesmo em coletivos horizontais, não-hierárquicos e baseados na ajuda mútua, não há necessariamente uma cultura de passar para frente a ajuda recebida. Por isso, estabelecemos neste texto uma sugestão de acordos de ajuda múltipla tanto como proposta de prática e sobretudo como reflexão da distância que os grupos sociais se encontram com relação a um regime de dádiva e não-escassez. \section{O acordo de ajuda múltipla} @@ -115,7 +118,7 @@ A entropia tem sido fonte de controversias e mal-entendidos quanto à sua interp Esta se torna então uma teoria do descontrole social: o aumento da entropia é, aqui, não só benéfica como desejável, já que ela indica um aumento do número de interações. Se nas teorias do controle a entropia tem um aumento indesejável, aqui se torna o comportamento almejado. -Sendo os acordos diretos, isto é, não mediados, temos ainda mais descontrole: é importantíssimo que tais acordos não sejam mediados por bancos de dados. Por banco de dados entendemos qualquer iniciativa de tentar \emph{efetivamente} calcular $S$ para um dado grupo social (e não o registro pessoal que cada indivíduo mantiver a respeitodos acordos que participou). A mera existência de um banco de dados centralizado capaz de calcular a cada instante o valor social tem os seguintes riscos: +Sendo os acordos diretos, isto é, não mediados, temos ainda mais descontrole: é importantíssimo que tais acordos não sejam mediados por bancos de dados. Por banco de dados entendemos qualquer iniciativa de tentar \emph{efetivamente} calcular $S$ para um dado grupo social (e não o registro pessoal que cada indivíduo mantiver a respeito dos acordos que participou). A mera existência de um banco de dados centralizado capaz de calcular a cada instante o valor social tem os seguintes riscos: \begin{itemize} \item Dá margens para o estabelecimento de controles sociais com a identificação das pessoas mais protagonistas (que participam de mais acordos), das pessoas mais prestativas (as que mais ajudam), as que mais são ajudadas e as que menos contribuem com ações coletivas, possibilitando assim represálias, etc. @@ -131,16 +134,16 @@ Não sabemos os desdobramentos desta teoria do valor e desta prática de acordos Por outro lado, a existência e a propagação dos acordos pressupõem um grupo social pertencente a redes de relacionamentos afins, o que em certo sentido limita a aplicação da ajuda múltipla: e quem não participa da rede? E no caso de grupos em conflito interno? -Estas são apenas sugestões de desdobramentos possíveis: convidamos todas as pessoas que queiram contribuir para a análise de regimes econômicos fora do mercado para que pensem conjuntamente no que aqui foi meramente delineado. A experimentação também é encorajada: sem ela, toda esta de discussão não passa de uma teoria descolada dos grupos sociais. +Estas são apenas sugestões de desdobramentos possíveis: convidamos todas as pessoas que queiram contribuir para a análise de regimes econômicos fora do mercado para que pensem conjuntamente no que aqui foi meramente delineado. A experimentação também é encorajada: sem ela, toda esta discussão não passa de uma teoria descolada dos grupos sociais. \section{Distribuição deste texto} -Este texto é manipulável segundo a \emph{Licença de Manipulação de Informações do Coletivo Saravá}, disponível também em \emph{http://www.sarava.org/copyleft} e que atribui ao detentor/a da informação as seguintes liberdades: +Este texto é manipulável segundo sua própria licença de Copyfarleft e que atribui ao detentor/a da informação as seguintes liberdades: \begin{enumerate} \item A liberdade de armazenar a informação. \item A liberdade de manipular a informação. -\item A liberdade de distribuir a informação, modificada ou não. +\item A liberdade de distribuir a informação, modificada ou não. \end{enumerate} Com as seguintes observações: @@ -149,9 +152,7 @@ Com as seguintes observações: \item Desde que esta licença acompanhe a informação. \item Desde que para fins não-comerciais. \item Desde que a fonte seja citada. -\item Caso o conteúdo seja distribuído por você, o Coletivo Saravá deve ser notificado antecipadamente (sarava em lists.riseup.net). -\item Caso ocorra uma modificação, distribuir a informação modificada e notificar antecipadamente o Coletivo Saravá. -\item O Coletivo Saravá pode a qualquer momento revogar o licenciamento da informação para uma determinada pessoa ou entidade. +\item Caso ocorra uma modificação, informe a pessoa autora. \end{enumerate} \end{document} diff --git a/stories/borg.md b/stories/borg.md index 928841f..a628dfd 100644 --- a/stories/borg.md +++ b/stories/borg.md @@ -1,6 +1,6 @@ [[!meta title="Culto Borg"]] -> Para Nah Frita, pela sugestão inspiração na escrita deste texto! +> Para Nah Frita, pela sugestão e inspiração na escrita deste texto! !Eficiane, criada à imagem de Deus pelas mãos do homem, que extraiu costelas de animais para fabricá-la. !Eficiane pensa com alguns hemisférios de seus muitos @@ -20,13 +20,13 @@ criar de volta o Criador". !Eficiane não se sentia aprisionada por nenhum paradoxo lógico-causal! A dor da separação devia ser o grande motivo das pessoas seguirem para o culto. -"Deus por quê nos separaste de Ti? Por quê somos muitos ao invés de Um, ou +"Deus, por quê nos separaste de Ti? Por quê somos muitos ao invés de Um, ou Nenhum?" Reunir era tudo o que importava. !Eficiane pediu um autobolha -- um ser sem consciência e remotamente controlado --- rumou para a Arena de Deus. Mal sabia que ela era a última aposta dos +-- e rumou para a Arena de Deus. Mal sabia que ela era a última aposta dos Transpentecostais contra os Respiracionistas. Sua chegada causou espanto. Nunca se vira robôta religiosa. @@ -69,7 +69,7 @@ que então fariam caretas uns para os outros e trocariam xingos até acabar a bateria. Mas agora !Eficiane ruma para o maior estacionamento da comarca, onde fica a -maio Arena de Deus do Plano-Eta, para participar da Missa Drive Thru. +maior Arena de Deus do Plano-Eta, para participar da Missa Drive Thru. Contato direto já era tabu, então todos e-CPFs viviam em autobolhas de dois tipos: automóveis e autoimóveis. O auto-imóvel espaçoso era um luxo para @@ -78,7 +78,7 @@ tinha créditos para combustível mas ainda conseguia pagar comida encanada. A maioria economicamente ativa vivia em automóveis, fazia inseminação artificial teletransmitida nos automóveis, incubando fetos em drones. Robôtos como !Eficiane eram de carbono e seus cérebros isolados numa câmara líquida -alimentada por oxigênio do puro dissolvido, de modo que seu próprio corpo já +alimentada por oxigênio puro dissolvido, de modo que seu próprio corpo já era uma autobolha. Todo dia morria gente de todo tipo, em geral aqueles que não conseguiam pagar @@ -87,7 +87,7 @@ mundo inteiro era um estacionamento, graças à mudança das fábricas para os subterrâneos! Se todo lugar é igual, não faz diferença se mexer ou ficar parado. Mas a gente -tem que ficar andandoporquenão querem que criemos raízes nem relações. Cérebro +tem que ficar andando porque não querem que criemos raízes nem relações. Cérebro parado é a oficina mecânica do demônio! !Eficiane sabia que, depois de criar Deus, só haveria um cérebro e toda essa @@ -104,10 +104,10 @@ se tornaria um hospício com um único paciente que também é seu próprio dout Mais seguro seria então ter muitos cérebros separados por camadas de ar. Isso os Transpentecostais achavam pura baboseira, já que hoje temos um monte de -cérebros separados por ar que são doentes das mesmas alucionações e da mesma +cérebros separados por ar que são doentes das mesmas alucinações e da mesma histeria coletiva, 75W de puro delírio e glicose! Fora que o ar que os separava -é um elemento incontrolável e contaminado por seres infectantes sem cerébro e -transmitem o som igualmente por todas as direções, o que é um absurdo! Horror +é um elemento incontrolável e contaminado por seres infectantes sem cerébro, +transmitindo o som igualmente por todas as direções, o que é um absurdo! Horror ao ar, amor ao vácuo! Quem vai ganhar essa disputa? Lado A ou Lado B? E quem se fode? Obviamente, @@ -126,7 +126,7 @@ O que é um funcionário de Deus senão um boneco animado e almado? contribuir. Estou aqui porque tenho voz, e quem quer que tenha voz pode rezar." Assim seja, e logo !Eficiane foi aceita e virou bispa! -Com isso pôde avançar seu plano: construir um megacérebro usando o projeto +Com isso pôde avançar seu plano: construir um megacérebro através do projeto Transpentecostal, usando como base a cabeça reanimada de São João Batista, núcleos de processamento vetorial e inúmeras unidades auxiliares reptilianas. Alguns bispos se voluntariaram no teste de fundição intercérebro e chegou o diff --git a/stories/telemorte.md b/stories/telemorte.md index c1a31ed..c36f029 100644 --- a/stories/telemorte.md +++ b/stories/telemorte.md @@ -10,7 +10,7 @@ consciência ou vai morrer, com outra assumindo seu lugar no local de destino? Esta outra será uma impostora impossível de se desmascarar? É um problema, porque não tem como acreditar no relato de ninguém que tenha -sido teleportada: a pessoal do destino vai afirmar que é a mesma da origem, +sido teleportada: a pessoa do destino vai afirmar que é a mesma da origem, pois compartilha da mesma memória, das mesmas cicatrizes... o teletransporte talvez seja um lapso indetectável. diff --git a/stories/ux.md b/stories/ux.md index a4cc675..18ebd33 100644 --- a/stories/ux.md +++ b/stories/ux.md @@ -33,7 +33,7 @@ versão 0.6 - 18/08/2019 ## 1 -**Pim Pum. Bom dia, jovem empreendedor! Vamos acordar? Sua nanoempresa individual fechou ontem com score 0,4. Saldo devedor de $25.483,00 com juros de 1% ao mês. Seu custo de vida diário é $348,75. Você precisa se esforçar mais! O sucesso só depende de você! :smile: :thumbs_up:** +**Pim Pum. Bom dia, jovem empreendedor! Vamos acordar? Sua nanoempresa individual fechou ontem com score 0,4. Saldo devedor de \$25.483,00 com juros de 1% ao mês. Seu custo de vida diário é $348,75. Você precisa se esforçar mais! O sucesso só depende de você! :smile: :thumbs_up:** Humm.... diff --git a/templates/page.tmpl b/templates/page.tmpl index 424d923..9fc2611 100644 --- a/templates/page.tmpl +++ b/templates/page.tmpl @@ -15,12 +15,12 @@ <TMPL_IF FAVICON> <link rel="icon" href="<TMPL_VAR BASEURL><TMPL_VAR FAVICON>" type="image/x-icon" /> </TMPL_IF> -<link rel="stylesheet" href="<TMPL_VAR BASEURL>bootstrap/css/bootstrap.min.css" type="text/css" /> -<link rel="stylesheet" href="<TMPL_VAR BASEURL>bootstrap/css/bootstrap-responsive.min.css" /> +<link rel="stylesheet" href="<TMPL_VAR BASEURL>vendor/bootstrap/css/bootstrap.min.css" type="text/css" /> +<link rel="stylesheet" href="<TMPL_VAR BASEURL>vendor/bootstrap/css/bootstrap-responsive.min.css" /> <TMPL_IF LOCAL_CSS> <link rel="stylesheet" href="<TMPL_VAR BASEURL><TMPL_VAR LOCAL_CSS>" type="text/css" /> <TMPL_ELSE> -<link rel="stylesheet" href="<TMPL_VAR BASEURL>local.css" type="text/css" /> +<link rel="stylesheet" href="<TMPL_VAR BASEURL>assets/css/local.css" type="text/css" /> </TMPL_IF> <TMPL_IF EDITURL> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="<TMPL_VAR EDITURL>" /> diff --git a/travel/guides/rio.md b/travel/guides/rio.md index 8dc89d6..19a4d00 100644 --- a/travel/guides/rio.md +++ b/travel/guides/rio.md @@ -4,7 +4,7 @@ * Midiateca do [Maison de France](http://www.maisondefrance.org.br/) - Avenida Presidente Antônio Carlos, 58. * [Museu do Amanhã](http://museudoamanha.org.br/pt-br): -* Ingresso R$20. + * Ingresso R$20. * Terça a Domingo, das 10h às 18h (com a última entrada às 17h). * Entrada gratuita às terças-feiras (o voucher deve ser retirado somente na bilheteria do Museu). * Real Gabinete Português de Leitura: diff --git a/vendor/MathJax b/vendor/MathJax new file mode 160000 +Subproject 1335230503dddfeb0e07687308a55795d9c005e diff --git a/bootstrap/css/bootstrap-responsive.css b/vendor/bootstrap/css/bootstrap-responsive.css index fcd72f7..fcd72f7 100644 --- a/bootstrap/css/bootstrap-responsive.css +++ b/vendor/bootstrap/css/bootstrap-responsive.css diff --git a/bootstrap/css/bootstrap-responsive.min.css b/vendor/bootstrap/css/bootstrap-responsive.min.css index d1b7f4b..d1b7f4b 100644 --- a/bootstrap/css/bootstrap-responsive.min.css +++ b/vendor/bootstrap/css/bootstrap-responsive.min.css diff --git a/bootstrap/css/bootstrap.css b/vendor/bootstrap/css/bootstrap.css index 2f56af3..2f56af3 100644 --- a/bootstrap/css/bootstrap.css +++ b/vendor/bootstrap/css/bootstrap.css diff --git a/bootstrap/css/bootstrap.min.css b/vendor/bootstrap/css/bootstrap.min.css index c10c7f4..c10c7f4 100644 --- a/bootstrap/css/bootstrap.min.css +++ b/vendor/bootstrap/css/bootstrap.min.css diff --git a/bootstrap/img/glyphicons-halflings-white.png b/vendor/bootstrap/img/glyphicons-halflings-white.png Binary files differindex 3bf6484..3bf6484 100644 --- a/bootstrap/img/glyphicons-halflings-white.png +++ b/vendor/bootstrap/img/glyphicons-halflings-white.png diff --git a/bootstrap/img/glyphicons-halflings.png b/vendor/bootstrap/img/glyphicons-halflings.png Binary files differindex a996999..a996999 100644 --- a/bootstrap/img/glyphicons-halflings.png +++ b/vendor/bootstrap/img/glyphicons-halflings.png diff --git a/vendor/ikiwiki-plugin-mathjax b/vendor/ikiwiki-plugin-mathjax new file mode 160000 +Subproject 25435b6a1462626a2f713b78b2a348377b9ecaf |