diff options
-rw-r--r-- | .htaccess | 14 | ||||
-rw-r--r-- | economics/valor-social/valor-social.pdf | bin | 416479 -> 0 bytes | |||
-rw-r--r-- | events/2014/campusparty/slides.pdf | bin | 298949 -> 1295246 bytes | |||
-rw-r--r-- | events/2014/cryptorave/slides.pdf | bin | 558999 -> 2463810 bytes | |||
-rw-r--r-- | events/2014/sesc/apresentacao.pdf | bin | 240454 -> 1052049 bytes | |||
-rw-r--r-- | events/2015/fisl/slides.pdf | bin | 2170523 -> 8473301 bytes | |||
-rw-r--r-- | events/2017/cryptorave/hostil/slides.pdf | bin | 2365953 -> 8913779 bytes | |||
-rw-r--r-- | events/2018/cryptorave/hostil/slides.pdf | bin | 3289260 -> 12353719 bytes | |||
-rw-r--r-- | events/2019/re-criptografando/slides.pdf | bin | 3464534 -> 13277455 bytes | |||
-rw-r--r-- | meta.md | 19 | ||||
-rw-r--r-- | poetry/sarava.md (renamed from sarava.md) | 0 | ||||
-rw-r--r-- | reports.md | 13 | ||||
-rw-r--r-- | research/computing.md | 8 | ||||
-rw-r--r-- | research/computing/git.md (renamed from research/git.md) | 0 | ||||
-rw-r--r-- | research/computing/libreboot.md (renamed from research/libreboot.md) | 0 | ||||
-rw-r--r-- | research/computing/services.md (renamed from services.md) | 0 | ||||
-rw-r--r-- | research/computing/suckless.md (renamed from suckless.md) | 0 | ||||
-rw-r--r-- | research/computing/suckless/messaging.md (renamed from suckless/messaging.md) | 0 | ||||
-rw-r--r-- | research/computing/suckless/sites.md (renamed from suckless/sites.md) | 0 | ||||
-rw-r--r-- | research/computing/suckless/virtual.md (renamed from suckless/virtual.md) | 0 | ||||
-rw-r--r-- | research/computing/suckless/virtual/screenshot.png (renamed from suckless/virtual/screenshot.png) | bin | 74886 -> 74886 bytes | |||
-rw-r--r-- | research/computing/thinkpad.md (renamed from research/thinkpad.md) | 40 | ||||
-rw-r--r-- | research/computing/token.md (renamed from research/token.md) | 2 | ||||
-rw-r--r-- | research/economics.md (renamed from economics.md) | 2 | ||||
-rw-r--r-- | research/economics/valor-social.md (renamed from economics/valor-social.md) | 0 | ||||
-rw-r--r-- | research/economics/valor-social/valor-social.dvi (renamed from economics/valor-social/valor-social.dvi) | bin | 27552 -> 27552 bytes | |||
-rw-r--r-- | research/economics/valor-social/valor-social.pdf | bin | 0 -> 2030536 bytes | |||
-rw-r--r-- | research/economics/valor-social/valor-social.tex (renamed from economics/valor-social/valor-social.tex) | 0 | ||||
-rw-r--r-- | research/openwrt.md | 65 | ||||
-rw-r--r-- | research/readers.md | 128 | ||||
-rw-r--r-- | research/smartphone.md | 198 | ||||
-rw-r--r-- | stories/ux/2029.pdf | bin | 458703 -> 2003806 bytes | |||
-rw-r--r-- | suckless/cli.md | 26 |
33 files changed, 59 insertions, 456 deletions
@@ -9,8 +9,15 @@ RewriteRule ^fisl$ /events/2015/fisl/ [R] RewriteRule ^static$ /suckless/sites/ [R] RewriteRule ^cli$ /suckless/cli/ [R] - RewriteRule ^virtual$ /suckless/virtual/ [R] + RewriteRule ^sarava$ /poesia/sarava/ [R] + RewriteRule ^services$ /research/computing/services/ [R] + RewriteRule ^suckless(.*)$ /research/computing/suckless$1 [R] + RewriteRule ^virtual$ /research/computing/suckless/virtual/ [R] RewriteRule ^orphans$ /research/archived/ [R] + RewriteRule ^research/git$ /research/computing/git [R] + RewriteRule ^research/libreboot$ /research/computing/libreboot [R] + RewriteRule ^research/thinkpad$ /research/computing/thinkpad [R] + RewriteRule ^research/token$ /research/computing/token [R] RewriteRule ^books/amor(.*)$ /books/love$1 [R] RewriteRule ^books/vida(.*)$ /books/life$1 [R] RewriteRule ^books/historia(.*)$ /books/history$1 [R] @@ -23,3 +30,8 @@ RewriteRule ^organizacao$ https://templates.fluxo.info/organizacao [R] RewriteRule ^research/lab$ https://templates.fluxo.info/lab [R] </IfModule> + +<IfModule mod_alias.c> + # Barebones URL shortener service + Redirect /shortener/keyringer https://keyringer.pw +</IfModule> diff --git a/economics/valor-social/valor-social.pdf b/economics/valor-social/valor-social.pdf Binary files differdeleted file mode 100644 index 8c3c948..0000000 --- a/economics/valor-social/valor-social.pdf +++ /dev/null diff --git a/events/2014/campusparty/slides.pdf b/events/2014/campusparty/slides.pdf Binary files differindex c3072f1..5ab57e8 100644 --- a/events/2014/campusparty/slides.pdf +++ b/events/2014/campusparty/slides.pdf diff --git a/events/2014/cryptorave/slides.pdf b/events/2014/cryptorave/slides.pdf Binary files differindex 437d136..e13245c 100644 --- a/events/2014/cryptorave/slides.pdf +++ b/events/2014/cryptorave/slides.pdf diff --git a/events/2014/sesc/apresentacao.pdf b/events/2014/sesc/apresentacao.pdf Binary files differindex c3ef32a..273e2fd 100644 --- a/events/2014/sesc/apresentacao.pdf +++ b/events/2014/sesc/apresentacao.pdf diff --git a/events/2015/fisl/slides.pdf b/events/2015/fisl/slides.pdf Binary files differindex e6d6b9f..dcd6f45 100644 --- a/events/2015/fisl/slides.pdf +++ b/events/2015/fisl/slides.pdf diff --git a/events/2017/cryptorave/hostil/slides.pdf b/events/2017/cryptorave/hostil/slides.pdf Binary files differindex b845479..0c6e9c5 100644 --- a/events/2017/cryptorave/hostil/slides.pdf +++ b/events/2017/cryptorave/hostil/slides.pdf diff --git a/events/2018/cryptorave/hostil/slides.pdf b/events/2018/cryptorave/hostil/slides.pdf Binary files differindex a6c03d9..c23f3e8 100644 --- a/events/2018/cryptorave/hostil/slides.pdf +++ b/events/2018/cryptorave/hostil/slides.pdf diff --git a/events/2019/re-criptografando/slides.pdf b/events/2019/re-criptografando/slides.pdf Binary files differindex 8bcb12c..dbc4003 100644 --- a/events/2019/re-criptografando/slides.pdf +++ b/events/2019/re-criptografando/slides.pdf @@ -12,12 +12,16 @@ is here because it haven't found any other place yet to be sent. It's my brain's downstream wishing to be upstream somewhere or staged content to be sent to existing upstreams. +<!-- Fork this site and [check it's integrity](https://opsec.fluxo.info/meta)! +--> git clone https://git.fluxo.info/blog +<!-- git -C blog verify-commit HEAD And send patches ;) +--> ### License @@ -31,7 +35,10 @@ See [keys](/keys). * This is a [statically-generated website](/static). * That tries to implement [IndieWebCamp principles](http://indiewebcamp.com/principles). -* Using the same tags from [Fluxo de Links](https://links.fluxo.info) so content can be archived and referenced. +<!-- +* Using the same tags from [Fluxo de Links](https://links.fluxo.info) so + content can be archived and referenced. +--> ### Workflow @@ -40,8 +47,12 @@ See [keys](/keys). ### Nota ao público lusófono -Este site é bilíngue (português brasileiro e inglês internacional), porém sem tentativa de isolamento entre idiomas: +Este site é bilíngue (português brasileiro e inglês internacional), porém sem +tentativa de isolamento entre idiomas: -1. Conteúdo em português é voltado especificamente ao público brasileiro e lusófono, em geral ligado a temas de interesse específico ou à atuação local. -2. Conteúdo em ingês é voltado ao público geral e ligado a temas da computação, desenvolvimento de sistemas, etc. +1. Conteúdo em português é voltado especificamente ao público brasileiro e + lusófono, em geral ligado a temas de interesse específico ou à atuação + local. +2. Conteúdo em ingês é voltado ao público geral e ligado a temas da computação, + desenvolvimento de sistemas, etc. 3. Nomenclatura de pastas/seções em inglês, por convenção. diff --git a/sarava.md b/poetry/sarava.md index affe37e..affe37e 100644 --- a/sarava.md +++ b/poetry/sarava.md diff --git a/reports.md b/reports.md deleted file mode 100644 index bba4caf..0000000 --- a/reports.md +++ /dev/null @@ -1,13 +0,0 @@ -[[!meta title="Reports / Relatórios"]] - -Relatórios são formas curiosas de inventar um significado transversal -ou buscar um padrão no conjunto de atividades que desempenhamos. - -Este é um experimento de relatar atividades de quando em vez. - - Cohn's Law: - The more time you spend in reporting on what you are doing, the less - time you have to do anything. Stability is achieved when you spend - all your time reporting on the nothing you are doing. - -[[!inline pages="page(reports*)" archive="yes"]] diff --git a/research/computing.md b/research/computing.md new file mode 100644 index 0000000..a8469c8 --- /dev/null +++ b/research/computing.md @@ -0,0 +1,8 @@ +[[!meta title="Computing"]] +[[!tag computing]] + +Research on computing. + +## Subpages + +[[!inline pages="page(research/computing*)" archive="yes"]] diff --git a/research/git.md b/research/computing/git.md index f59f38c..f59f38c 100644 --- a/research/git.md +++ b/research/computing/git.md diff --git a/research/libreboot.md b/research/computing/libreboot.md index fa0ec98..fa0ec98 100644 --- a/research/libreboot.md +++ b/research/computing/libreboot.md diff --git a/services.md b/research/computing/services.md index 7b8286d..7b8286d 100644 --- a/services.md +++ b/research/computing/services.md diff --git a/suckless.md b/research/computing/suckless.md index 853f2c8..853f2c8 100644 --- a/suckless.md +++ b/research/computing/suckless.md diff --git a/suckless/messaging.md b/research/computing/suckless/messaging.md index 81c80a6..81c80a6 100644 --- a/suckless/messaging.md +++ b/research/computing/suckless/messaging.md diff --git a/suckless/sites.md b/research/computing/suckless/sites.md index 67149d5..67149d5 100644 --- a/suckless/sites.md +++ b/research/computing/suckless/sites.md diff --git a/suckless/virtual.md b/research/computing/suckless/virtual.md index 51c01c1..51c01c1 100644 --- a/suckless/virtual.md +++ b/research/computing/suckless/virtual.md diff --git a/suckless/virtual/screenshot.png b/research/computing/suckless/virtual/screenshot.png Binary files differindex f5541c4..f5541c4 100644 --- a/suckless/virtual/screenshot.png +++ b/research/computing/suckless/virtual/screenshot.png diff --git a/research/thinkpad.md b/research/computing/thinkpad.md index 2799470..e873c74 100644 --- a/research/thinkpad.md +++ b/research/computing/thinkpad.md @@ -15,26 +15,26 @@ propriedade. [De onde vem o slogan THINK](/books/history/ibm-holocaust): -> NCR salesmen wore dark suits, the corporation innovated a One Hun- -> dred Point Club for agents who met their quota, and The Cash stressed "clean -> living" as a virtue for commercial success. One day during a pep rally to the -> troops, Watson scrawled the word THINK on a piece of paper. Patterson saw -> the note and ordered THINK signs distributed throughout the company. -> Watson embraced many of Patterson's regimenting techniques as indispens- -> able doctrine for good sales. What he learned at NCR would stay with him -> forever. -> -> -- do livro IBM and The Holocaust, pág. 42 -> -> Large pictures of Watson in the weekly company publication, Business -> Machines, regularly sported headlines proclaiming even his ordinary accom- -> plishments, such as "Thomas J. Watson Opens New Orleans Office." The ever- -> present equating of his name with the word THINK was more than an -> Orwellian exercise, it was a true-life indoctrination. The Watson mystique -> was never confined to the four walls of IBM. His aura was only magnified by -> his autocratic style -> -> -- do livro IBM and The Holocaust, pág. 47 + NCR salesmen wore dark suits, the corporation innovated a One Hun- + dred Point Club for agents who met their quota, and The Cash stressed "clean + living" as a virtue for commercial success. One day during a pep rally to the + troops, Watson scrawled the word THINK on a piece of paper. Patterson saw + the note and ordered THINK signs distributed throughout the company. + Watson embraced many of Patterson's regimenting techniques as indispens- + able doctrine for good sales. What he learned at NCR would stay with him + forever. + + -- do livro IBM and The Holocaust, pág. 42 + + Large pictures of Watson in the weekly company publication, Business + Machines, regularly sported headlines proclaiming even his ordinary accom- + plishments, such as "Thomas J. Watson Opens New Orleans Office." The ever- + present equating of his name with the word THINK was more than an + Orwellian exercise, it was a true-life indoctrination. The Watson mystique + was never confined to the four walls of IBM. His aura was only magnified by + his autocratic style + + -- do livro IBM and The Holocaust, pág. 47 Esse aí é o DNA da IBM. Não é de se estranhar que tenha sido tão fácil para a Apple capitalizar em cima dos hobbystas da computação pessoal e se colocar como diff --git a/research/token.md b/research/computing/token.md index 36610ac..9901faa 100644 --- a/research/token.md +++ b/research/computing/token.md @@ -1,5 +1,7 @@ [[!meta title="Tokens USB"]] +Sobre tokens criptográficos USB. + ## Gnuk * [Free Software Initiative of Japan - gnuk](http://www.fsij.org/category/gnuk.html) diff --git a/economics.md b/research/economics.md index 8cf4f51..45b4626 100644 --- a/economics.md +++ b/research/economics.md @@ -5,4 +5,4 @@ An inquiry on economies and values. ## Subpages -[[!inline pages="page(economics*)" archive="yes"]] +[[!inline pages="page(research/economics*)" archive="yes"]] diff --git a/economics/valor-social.md b/research/economics/valor-social.md index f12280c..f12280c 100644 --- a/economics/valor-social.md +++ b/research/economics/valor-social.md diff --git a/economics/valor-social/valor-social.dvi b/research/economics/valor-social/valor-social.dvi Binary files differindex ef3e8d3..ef3e8d3 100644 --- a/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 differnew file mode 100644 index 0000000..0618563 --- /dev/null +++ b/research/economics/valor-social/valor-social.pdf diff --git a/economics/valor-social/valor-social.tex b/research/economics/valor-social/valor-social.tex index 58f97c3..58f97c3 100644 --- a/economics/valor-social/valor-social.tex +++ b/research/economics/valor-social/valor-social.tex diff --git a/research/openwrt.md b/research/openwrt.md deleted file mode 100644 index 7f68187..0000000 --- a/research/openwrt.md +++ /dev/null @@ -1,65 +0,0 @@ -[[!meta title="Wireless com OpenWRT"]] - -Pesquisa rápida sobre roteadores wireless. - -Requisitos ----------- - -1. Bom alcance (potência e sensibilidade). -2. [Rodar OpenWRT](https://wiki.openwrt.org/toh). -3. Preferencialmente arquitetura MIPS. - -Candidatos ----------- - -### TP-Link TL-WDR4300 - -* [TP-Link TL-WDR4300](https://wiki.openwrt.org/toh/tp-link/tl-wdr4300). -* [Download for TL-WDR4300 V1 - Welcome to TP-LINK](http://www.tp-link.com/en/download/TL-WDR4300.html). - -### TP-Link Archer C5 AC1200 - -* Problema: vendor lockdown: dependendo da versão, só carrega firmware assinado. -* [TP-Link Archer C5 AC1200 / TP-Link Archer C7 AC1750 / TP-Link TL-WDR7500](https://wiki.openwrt.org/toh/tp-link/archer-c5-c7-wdr7500). - -### TP-Link TL-WR941ND - -* [TP-Link TL-WR941ND](https://wiki.openwrt.org/toh/tp-link/tl-wr941nd). - -Escolhido ---------- - -* [TP-Link TL-WDR4300](https://wiki.openwrt.org/toh/tp-link/tl-wdr4300): - é um dos [recomendados](https://wiki.openwrt.org/toh/recommended_routers); [comparação de preços](http://www.buscape.com.br/tp-link-tl-wdr4300) (ar71xx). - -Configuração ------------- - -* [Bridged AP [OpenWrt Wiki]](https://wiki.openwrt.org/doc/recipes/bridgedap). -* [Client Mode Wireless [OpenWrt Wiki]](https://wiki.openwrt.org/doc/howto/clientmode). - -Upgrade de versão ------------------ - -* Referência: [OpenWrt OS upgrade procedure (LuCI or sysupgrade)](http://wiki.openwrt.org/doc/howto/generic.sysupgrade). -* Baixe e verifique a integridade (sha256sum, gpg, etc) da nova versão do firmware. -* Verifique se todas as modificações de configuração serão preservadas no upgrade (vide referência). -* Suba para o roteador e atualize. -* Exemplo: - - tpc$ scp openwrt-15.05.1-ar71xx-generic-tl-wdr4300-v1-squashfs-factory.bin router:/tmp - router# sysupgrade -v /tmp/openwrt-15.05.1-ar71xx-generic-tl-wdr4300-v1-squashfs-factory.bin - -Upgrade de pacotes ------------------- - -Conforme [documentação](http://wiki.openwrt.org/doc/howto/generic.sysupgrade#check_for_any_upgradable_packages), mas sendo também um [procedimento questionável](https://superuser.com/questions/1121313/updating-openwrt-due-to-security-issues): - - opkg update - opkg list-upgradable - opkg upgrade <pacotes> # certifique-se de que haja espaço suficiente em / - -Anúncios de segurança ---------------------- - -* [openwrt-security-announce](https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-security-announce) diff --git a/research/readers.md b/research/readers.md deleted file mode 100644 index 391eb20..0000000 --- a/research/readers.md +++ /dev/null @@ -1,128 +0,0 @@ -[[!meta title="Leitores - eReaders - e-Ink"]] -[[!tag leitura hardware pesquisa gadget]] - -Essencial ---------- - -* Que o e-reader não te vigie, sabendo quais livros você lê, em qual página você está, etc. - -Básico ------- - -* [fread is coming](https://fread.ink/). -* [MobileRead Wiki - Debian Linux on a Kobo](https://wiki.mobileread.com/wiki/Debian_Linux_on_a_Kobo). -* [Ask HN: Cheap, hackable e-reader? | Hacker News](https://news.ycombinator.com/item?id=13863046). - -Kobo ----- - -* [Kobo Brasil - Google+](https://plus.google.com/communities/112084021543948580071). -* [Graham King » Kobo eReader Touch on Ubuntu Linux](https://www.darkcoding.net/misc/kobo-ereader-touch-on-ubuntu-linux/). -* [Kobo Aura H2O - Rakuten Kobo eReader Store](https://gl.kobobooks.com/products/kobo-aura-h2o). -* [Kobo e-reader](https://en.wikipedia.org/wiki/Kobo_eReader). -* [Code](https://github.com/kobolabs/Kobo-Reader). - -## Customizing - -* [KOReader Community · GitHub](https://github.com/koreader): - [Installation on Kobo devices · koreader/koreader Wiki · GitHub](https://github.com/koreader/koreader/wiki/Installation-on-Kobo-devices). - -### Hacking - -* [Kobo Start Menu 08 - MobileRead Forums](https://www.mobileread.com/forums/showthread.php?t=266821). -* [Hacking the fnacbook (aka. Kobo by Fnac) - a3nm's blog](https://a3nm.net/blog/fnacbook_kobo_hacking.html). -* [Even more Kobo hacking - a3nm's blog](https://a3nm.net/blog/kobo_glo_hacking.html). -* [MobileRead Wiki - Kobo Touch Hacking](https://wiki.mobileread.com/wiki/Kobo_Touch_Hacking). -* [Hacking / Customizing a Kobo Touch ebook reader: Part I, sqlite (Shallow Thoughts)](http://shallowsky.com/blog/tech/kobo-hacking.html). -* [Offline Wikipedia on Kobo (Guide) - MobileRead Forums](https://www.mobileread.com/forums/showthread.php?t=276219). -* [KoboStuff](https://geek1011.github.io/KoboStuff/). - -### Sincronização - -#### Usando rsync - -A partir de uma cópia completa do acervo: - - storage="/path/to/complete/doc/repos" - sudo rsync --size-only -avL --no-p --no-g --no-owner --delete-after --ignore-errors \ - --include='*/' --include='*.pdf' --include='*.epub' --include='*.mobi' --include='*djvu' --exclude='*' \ - $storage/books/ /media/tablet/books/ - -Notar que usamos: - -* `--size-only` para fazer uma comparação simples de tamanho dos arquivos (é - seguro porque assumimos que são obras autoradas/fechadas) e copiar mais - rápido, além de evitar a cópia completa por conta de `-L`. -* `--ignore-errors` por conta de possíveis ligações simbólicas mortas de - arquivos do git-annex que não estejam na cópia de trabalho. - -#### Usando lftp - -Sincronizando uma única pasta (`~/data/doc/current` do computador para `/mnt/sd/current` do kobo): - - lftp -c "open sftp://kobo && mirror -L -R ~/data/doc/current /mnt/sd/current" - -### Base de dados - -Vide [export-kobo](https://github.com/pettarin/export-kobo). - -### Plato - -* [Plato - A document reader for PDF, ePUB, DjVu, etc](https://www.mobileread.com/forums/showthread.php?t=292914). -* [Guia](https://github.com/baskerville/plato/blob/master/doc/GUIDE.md): - - vi /media/usb/.adds/plato/Settings.toml # library-path = "/mnt" - -### Koreader - -* [Repositório](https://github.com/koreader/koreader). -* [Site](http://koreader.rocks/). -* [Wiki](https://github.com/koreader/koreader/wiki). -* [OPDS](https://github.com/koreader/koreader/wiki/OPDS-support). -* [Instalação](https://github.com/koreader/koreader/wiki/Installation-on-Kobo-devices). -* [One-Click Install Packages for KOReader & Plato](https://www.mobileread.com/forums/showthread.php?t=314220). -* [Getting Started](https://github.com/koreader/koreader/wiki/Getting-Started). -* [Gestures](https://github.com/koreader/koreader/wiki/KOReader-Gestures). -* [Tips and Tricks](https://github.com/koreader/koreader/wiki/Tips-and-Tricks). -* [KoHighlights](https://github.com/noembryo/KoHighlights) ([exporting highlights as text](https://github.com/koreader/koreader/issues/3690). -* [Dictionary support](https://github.com/koreader/koreader/wiki/Dictionary-support), incluindo OCR via Tesseract. -* [SSH](https://github.com/koreader/koreader/wiki/SSH): usar `ssh root@IP`, deixando a chave pública (atualmente apenas suporta chave RSA) em - - /mnt/onboard/.adds/koreader/settings/SSH/authorized_keys - -#### Folders - -* On device: /mnt/onboard/.adds/koreader -* On PC: $HOME/.config/koreader - -#### Wallabag - -Wallabag config lives at `/mnt/.adds/koreader/settings/wallabag.lua`; sample -config that can be edited via ssh: - - -- we can read Lua syntax here! - return { - ["wallabag"] = { - ["is_delete_finished"] = false, - ["articles_per_sync"] = 30, - ["filter_tag"] = "", - ["is_sync_remote_delete"] = false, - ["client_secret"] = "", - ["password"] = "", - ["is_auto_delete"] = false, - ["client_id"] = "", - ["is_delete_read"] = false, - ["is_archiving_deleted"] = false, - ["username"] = "", - ["server_url"] = "", - ["ignore_tags"] = "" - } - } - -#### OCR - - scp /path/to/tessdata/* kobo:/mnt/onboard/.adds/koreader/data/tessdata/ - -### Misc - -* [OPDS](https://wiki.mobileread.com/wiki/OPDS) diff --git a/research/smartphone.md b/research/smartphone.md deleted file mode 100644 index 67f2a27..0000000 --- a/research/smartphone.md +++ /dev/null @@ -1,198 +0,0 @@ -[[!meta title="Smartphone"]] - -[[!toc levels=4]] - -Objetivo --------- - -* Ter um smartphone disponível e funcional sempre que preciso. -* Reduzindo ao máximo as perdas de privacidade e segurança. -* Estabilidade de longo prazo: escolhas de hardware, software e configuração duráveis. -* Opcional: - * Suporte a [MHL](https://en.wikipedia.org/wiki/Mobile_High-Definition_Link) ou com conector micro-HDMI. - -Sistema escolhido ------------------ - -Para este estudo, o sistema escolhido foi o [LineageOS](https://lineageos.org). - -### Prós - -* Código mais aberto. -* Risco menor de backdoors. -* Google Apps não-mandatório. - -### Contras - -* Menor base de aplicativos. -* Atualizações de segurança mais lentas. -* Ainda dependente de um ecossistema tecnotóxico. -* No caso de root no dispositivo, há redução de segurança. - -Modelo escolhido ----------------- - -Para este estudo, o modelo escolhido foi o Moto E. - -### Prós - -* Custo relativamente baixo. -* Bom suporte ao LineageOS. - -### Contras - -* Sem flash. -* Bateria não-removível. -* Jack de áudio não é compatível com qualquer conector. - -Checklist ---------- - -Iterador básico para a manutenção do smartphone: - -* Destravamento do bootloader. -* Instalação ou atualização do recovery. -* Instalação do LineageOS. -* [Criptografia do armazenamento interno](https://source.android.com/security/encryption/full-disk). -* Configuração de senha e intervalo de travamento (após cifrar o armazenamento). -* Ferramentas de desenvolvimento habilitadas. -* Restaurar backups e configurações, caso existam. -* Configurações de aparência e comportamento. -* Apps: - * VPN. - * Editor. - * [Signal APK](https://signal.org/android/apk/). - * Barcode Scanner. - * [Scuttloid](https://f-droid.org/packages/gr.ndre.scuttloid/). - * [MPDroid](https://f-droid.org/packages/com.namelessdev.mpdroid/). -* Teste e correções. -* Realização de backups. -* Upgrade: - * Atualizar ROM. - * Atualizar apps via F-Droid. - * Atualizar apks manualmente. - * Alguns apps podem ser auto-autualizáveis. - -Detalhes a seguir sobre algumas das etapas acima elencadas. - -Destravamento -------------- - -Este procedimento é específico para alguns aparelhos para que o bootloader -possa ser desbloqueado, como é o caso do modelo escolhido: - - sudo apt install adb fastboot - - 1 20160410 14:55:06 user@box:~ $ adb reboot bootloader - 0 20160410 14:55:22 user@box:~ $ fastboot devices - 0012711246 fastboot - 0 20160410 14:55:40 user@box:~ $ fastboot oem get_unlock_data - ... - (bootloader) [...] - OKAY [ 0.235s] - finished. total time: 0.235s - 0 20160410 14:56:01 user@box:~ $ fastboot oem unlock $code - ... - (bootloader) Check 'Allow OEM Unlock' in Developer Options. - FAILED (remote failure) - finished. total time: 0.007s - 1 20160410 15:30:32 user@box:~ $ fastboot devices - 0012711246 fastboot - 0 20160410 15:30:49 user@box:~ $ - -Recovery --------- - -Usando o [TWRP para Moto E surnia](https://twrp.me/motorola/motorolamotoelte.html): - - adb reboot bootloader - fastboot flash recovery recovery.img - fastboot reboot - -Instalação ----------- - -Detalhes de instalação já são bem cobertos pela documentação do LineageOS, -incluindo a ativação do ADB: - -* [Update and build preparation](http://lineageos.org/Update-and-Build-Prep/). -* [Moto E surnia builds](https://download.lineageos.org/surnia). -* [Verifying builds](http://wiki.lineageos.org/verifying-builds.html). -* [Info about surnia | LineageOS Wiki](https://wiki.lineageos.org/devices/surnia). -* [Install LineageOS on surnia | LineageOS Wiki](https://wiki.lineageos.org/devices/surnia/install). -* [Using ADB and fastboot | LineageOS Wiki](https://wiki.lineageos.org/adb_fastboot_guide.html). - -Backups -------- - -Usaremos o [adb-sync](https://github.com/google/adb-sync) e o -[adb-export](https://github.com/snatik/adb-export) através do script -[android-backup](https://git.fluxo.info/scripts/tree/android-backup): - - android-backup <phone-name> - -Restauro --------- - -A partir de um sistema recém-instalado: - - android-restore <phone-name> - -## Subir músicas - -Podem ser enviadas a partir de acervos compatíveis com o [playlister](https://git.fluxo.info/playlister/about/): - - playlist-copy <playlist> adb - -Dicas ------ - -## Escondendo arquivos do mídia player - - touch /storage/emulated/0/SomeApp/Media/.nomedia - -Via [Hide Certain Files in Android Music Player (or Photo Gallery)](http://www.guidingtech.com/15563/hide-certain-files-android-music-player-photo-gallery/). - -## Checagem de fingerprint do ADB - - awk '{print $1}' < ~/.android/adbkey.pub | openssl base64 -A -d -a | openssl md5 -c | \ - awk '{print $2}' | tr '[:lower:]' '[:upper:]' - -Via [Validating the Android 4.2.2 RSA fingerprint](https://shred.zone/cilla/page/374/validating-the-android-422-rsa-fingerprint.html). - -## Instalação manual de apps - -Checagem de assinatura: - - apksigner verify --print-certs app.apk - -Instalação: - - adb install app.apk - -## Movendo arquivos do sdcard para o armazenamento interno - - adb shell - cd /storage/emulated/0 - mv /storage/1FAC-34C3/Music/* Music/ - -Alternativas ------------- - -* [postmarketOS](https://www.postmarketos.org/). -* [Replicant](https://www.replicant.us/). -* [Neo900](http://neo900.org/). - -Referências ------------ - -* Aplicativos interessantes: snoopsnitch. -* [Modificações de hardware](https://web.archive.org/web/20160402005909/https://people.torproject.org/~ioerror/skunkworks/moto_e/). -* [List of custom android firmware](https://en.wikipedia.org/wiki/List_of_custom_Android_firmware). -* [Fossdroid: Free and open source Android apps](https://fossdroid.com/). -* Backups: - * [Android: How to Backup Contacts and SMS Messages | chombium's blog](https://chombium.wordpress.com/2012/09/30/android-how-to-backup-contacts-and-sms-messages/), but requires root on recent androids. - * [Does adb backup include contacts? - Android Enthusiasts Stack Exchange](https://android.stackexchange.com/questions/85269/does-adb-backup-include-contacts). - * [GitHub - stachre/dump-contacts2db: Bash script that dumps contacts from an Android contacts2.db to stdout in vCard format. Especially helpful when the device is inop or missing, with only a contacts2.db file available (from backup, etc.) to migrate contac](https://github.com/stachre/dump-contacts2db). - * [Full Phone Backup without Unlock or … | Samsung Galaxy Nexus](https://forum.xda-developers.com/galaxy-nexus/general/guide-phone-backup-unlock-root-t1420351). - * [How to use ADB backup to back up your unrooted phone - Pocketables](http://www.pocketables.com/2012/09/how-to-use-adb-backup-to-back-up-your-unrooted-phone.html). diff --git a/stories/ux/2029.pdf b/stories/ux/2029.pdf Binary files differindex 5c93aba..2aba250 100644 --- a/stories/ux/2029.pdf +++ b/stories/ux/2029.pdf diff --git a/suckless/cli.md b/suckless/cli.md deleted file mode 100644 index c665dfe..0000000 --- a/suckless/cli.md +++ /dev/null @@ -1,26 +0,0 @@ -[[!meta title="The New Command Line Manifesto"]] - -Ideas: - -* Let all new commands to support also machine-readable formats as inputs and - outputs. - -* Encourage some good CLI practices like `--verbose` and `--dry-run/--simulate`. - -This, along with UNIX pipes and daemon interfacing, brings CLI -to a new era of services that are: - -* Still based on small programs that do one thing but one thing right. -* But also are capable of interacting with each other in an uniform way. - -So let them support parameters like `--json` and `--yaml` for it's I/O. - -In other words, with parsers and serializers it's possible to keep an -ecosystem of UNIX microservices interacting with each other using a -consistent API. - -References ----------- - -* [jo - JSON output from a shell](https://github.com/jpmens/jo) ([packages](https://repology.org/metapackage/jo/versions)). -* [jq](https://stedolan.github.io/jq/). |