Mudanças entre as edições de "Garoa Xuning"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
(Expansão de escopo)
 
(25 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
  +
== Participantes ==
== Responsáveis, participantes e etc. ==
 
   
 
*[[Usuário:Halbritter|Halbritter]]
 
*[[Usuário:Halbritter|Halbritter]]
  +
* <seu nome aqui>
   
 
== Objetivo ==
 
== Objetivo ==
   
Estimular a criatividade através da customização de ambientes operacionais, em especial GNU/Linux, usando o [[Manual de Identidade|Manual de Identidade]] e o conteúdo dessa Wiki (i.e., <code>Alt+Shift+X</code>).
+
Estimular a criatividade através da customização de ambientes operacionais GNU/Linux usando o conteúdo dessa Wiki de forma aleatória (e.g., <code>Alt+Shift+X</code>) conforme necessidade da ideia.
   
 
=== Sobre o que se trata esse projeto? Carros? ===
 
=== Sobre o que se trata esse projeto? Carros? ===
   
Sim, e iremos ''xuná-los'' com base no Manual de Identidade porque a ideia é deixá-los com a cara do Garoa.
+
Sim, e iremos ''xuná-los'' com base no conteúdo desse site porque a ideia é realmente deixá-los com a cara do Garoa.
   
 
<blockquote>
 
<blockquote>
Linha 15: Linha 16:
 
</blockquote>
 
</blockquote>
   
Para tanto, podemos começar a xunar apenas carros sem rodas. É mais simples.
+
Para tanto, podemos começar a xunar apenas carros sem rodas.
   
 
=== Por que Xuning? ===
 
=== Por que Xuning? ===
   
A [[Escolha do Nome|escolha do nome]] de, seja lá o que for, é importante. Abaixo alguns motivos pelo qual o termo ''xuning'' foi adotado:
+
A [[Escolha do Nome|escolha do nome]] de, seja lá o que for, é importante! Abaixo alguns motivos pelo qual o termo ''xuning'' foi adotado:
   
[[File:semiotica.png|290px|thumb|''semiosis'']]
+
[[File:semiotica.png|250px|thumb|''semiosis'']]
   
 
* Porque é aportuguesado.
 
* Porque é aportuguesado.
Linha 28: Linha 29:
 
* Porque ajuda a dar sentido a piada sem graça sobre R.I.C.E.
 
* Porque ajuda a dar sentido a piada sem graça sobre R.I.C.E.
 
* Por que não?
 
* Por que não?
  +
   
 
== ''Parts'' ==
 
== ''Parts'' ==
   
Por hora, aplicando a [[Netiqueta#Princ.C3.ADpios_b.C3.A1sicos_de_netiqueta|Netiqueta do Garoa]] além de seu propósito, algum código será postado no Pastebin até que venhamos a definir um repositório no GitHub do Garoa ou algo.
+
Por hora, aplicando a [[Netiqueta#Princ.C3.ADpios_b.C3.A1sicos_de_netiqueta|Netiqueta do Garoa]] além de seu propósito, algum código será postado no Pastebin e CryptPad até que venhamos a definir um repositório no GitHub ou algo.
   
=== Epoch Garoa Y2k38 ===
+
=== Epoch Garoa Y2K38 ===
   
 
É basicamente o [[Epoch|Epoch Garoa]] na barra de status usando o [https://tools.suckless.org/slstatus/ ''slstatus''] acrescido do glifo [[%E2%98%82|U2602]].
 
É basicamente o [[Epoch|Epoch Garoa]] na barra de status usando o [https://tools.suckless.org/slstatus/ ''slstatus''] acrescido do glifo [[%E2%98%82|U2602]].
Linha 43: Linha 45:
 
Código: '''https://pastebin.com/HRbnQt5z'''
 
Código: '''https://pastebin.com/HRbnQt5z'''
   
==== Contador no rodapé da Wiki ====
+
==== Contador presente no rodapé da Wiki ====
   
 
Pressupondo que esteja usando algum gerenciador de janelas como ''dwm'', execute no seu terminal:
 
Pressupondo que esteja usando algum gerenciador de janelas como ''dwm'', execute no seu terminal:
Linha 55: Linha 57:
 
Não no sentido original de protetor de telas para monitores antigos, mas como [http://www.catb.org/jargon/html/D/display-hack.html display hack].
 
Não no sentido original de protetor de telas para monitores antigos, mas como [http://www.catb.org/jargon/html/D/display-hack.html display hack].
   
[[File:display_hack_bitmap.gif|320px]]
+
[[File:Display_hack_bitmap.gif]]
   
Foi utilizado o [https://tools.suckless.org/slock/ ''slock''] e o [https://garoa.net.br/w/images/Logo_Garoa_Bitmap.png Garoa Bitmap]. Para que se obtenha o resultado esperado é necessário aplicar o patch [https://tools.suckless.org/slock/patches/dwmlogo/ ''dwmlogo'']. Caso não saiba lidar com arquivos de extensão '''.diff''', leia o item '''patch program''' disponível [https://suckless.org/hacking/ nesse site].
+
Foi utilizado o [https://tools.suckless.org/slock/ ''slock''] e o [https://garoa.net.br/w/images/Logo_Garoa_Bitmap.png Garoa Bitmap]. Para que se obtenha o resultado esperado é necessário aplicar o patch [https://tools.suckless.org/slock/patches/dwmlogo/ ''dwmlogo''].
   
 
Abaixo o código a ser salvo como <code>config.h</code> e usado pelo ''slock'' após o patch.
 
Abaixo o código a ser salvo como <code>config.h</code> e usado pelo ''slock'' após o patch.
Linha 91: Linha 93:
 
O Open Cubic Player, quando no Debian GNU/Linux, consegue tocar .MP3 pelo ALSA sem necessidade de configurações adicionais.
 
O Open Cubic Player, quando no Debian GNU/Linux, consegue tocar .MP3 pelo ALSA sem necessidade de configurações adicionais.
   
[[File:opencp.gif|320px|thumb|''OpenCP: I can play .MP3'']]
+
[[File:opencp.gif]]
   
 
==== Modo Würfel ====
 
==== Modo Würfel ====
   
À parte da visualização corriqueira com Fast Fourier Transform (FFT), este módulo é o que realmente importa para o projeto. Abaixo o andamento:
+
À parte da visualização corriqueira com Fast Fourier Transform (FFT), este módulo é o que realmente importa para o projeto.
   
  +
===== Porão 0 =====
# Entender o [https://www.cubic.org/player/doc/node76.htm WürfelAnimator "Professional"] encontrado [ftp://ftp.cubic.org/pub/player/historic/opencp25wap/ aqui]. '''OK'''
 
  +
# Desenhar animação no [https://www.povray.org/ POV-Ray]. '''OK'''
 
  +
[[File:castelinho_resumo.png|180px|thumb|Algumas peças de [https://www.youtube.com/watch?v=CRXy4QGvkNY LEGO®]]]
# Gerar frames usando o parâmetro <code>+fj</code> para obter arquivos .JPGs ao invés de .PNGs. '''OK'''
 
  +
# Entender o [http://f-lohmueller.de/pov_tut/animate/anim002e.htm Dave's TGA Animator] encontrado [ftp://ftp.povray.org/pub/povray/utilities/dta/ aqui]. '''OK'''
 
  +
[[File:zoomin_path.png|180px|thumb|Representação do trajeto entre a fachada e o ThinkPad T400s (e vice-versa)]]
# Converter .JPGs para .PCXs usando os parâmetros <code>/fpcx</code>, <code>/cmap</code> e <code>/sc320,200</code> do ''dta.exe''. '''OK'''
 
  +
# Montar script com os .PCXs e gerar o .DAT através do ''wap.exe'' para rodar no DOSBox. '''OK'''
 
  +
{| class="toccolours mw-collapsible wikitable" style="background-color:#fff;"
  +
! colspan=2 | Checklist &nbsp;
  +
|-
  +
| Estudar a arquitetura da fachada do "castelinho" encontrado [https://commons.wikimedia.org/wiki/Category:Parque_Residencial_Sav%C3%B3ia aqui]. || '''OK'''
  +
|-
  +
| Desenhar o ''sketch'' inspirado na versão não transformada [https://web.archive.org/web/20210416080822/http://escherdroste.math.leidenuniv.nl/index.php?menu=animation dessa obra] de M.C. Escher e [https://garoa.net.br/wiki/Arquivo:Porao.jpg essa foto]. || '''WIP'''
  +
|-
  +
| Escanear e vetorizar no [https://inkscape.org/pt-br/ Inkscape]. || '''TBD'''
  +
|-
  +
| Exportar para SVG. || '''TBD'''
  +
|-
  +
| Gravar ''zoom-in'' e exportar quadros com o comando <code>ffmpeg -i *.mp4 -vf fps=1 frame%d.png</code> do [https://ffmpeg.org/ FFmpeg]. || '''TBD'''
  +
|-
  +
| Converter .PNGs usando o comando <code>mogrify -resize 320x200! -colors 256 -format pcx *.png</code> do [https://imagemagick.org ImageMagick]. || '''TBD'''
  +
|-
  +
| Montar script com os .PCXs e gerar o .DAT através do ''wap.exe'' para rodar no DOSBox. || '''TBD'''
  +
|}
   
 
===== Sala 0 =====
 
===== Sala 0 =====
  +
  +
{| class="toccolours mw-collapsible mw-collapsed wikitable" style="background-color:#fff;"
  +
! colspan=2 | Checklist &nbsp;
  +
|-
 
| Entender o [https://www.cubic.org/player/doc/node76.htm WürfelAnimator "Professional"] encontrado [ftp://ftp.cubic.org/pub/player/historic/opencp25wap/ aqui]. || '''OK'''
  +
|-
 
| Criar cena de animação no [https://www.povray.org/ POV-Ray]. || '''OK'''
  +
|-
 
| Renderizar usando o parâmetro <code>+fj</code> para obter arquivos .JPGs ao invés de .PNGs. || '''OK'''
  +
|-
 
| Entender o Dave's TGA Animator encontrado [ftp://ftp.povray.org/pub/povray/utilities/dta/ aqui]. || '''OK'''
  +
|-
 
| Converter .JPGs para .PCXs usando os parâmetros <code>/fpcx</code>, <code>/cmap</code> e <code>/sc320,200</code> do ''dta.exe''. || '''OK'''
  +
|-
 
| Montar script com os .PCXs e gerar o .DAT através do ''wap.exe'' para rodar no DOSBox. || '''OK'''
  +
|}
   
 
Foram utilizados a [https://garoa.net.br/w/images/Sede-pinheiros-planta.png planta-baixa] da atual sede localizada em Pinheiros, o modelo 3D do [[contribuições|"prisma"]] encontrado no [https://github.com/garoa/Modelos-3D GitHub do Garoa] e o conteúdo presente na página dedicada à [[imprensa]], em especial a reportagem em vídeo da edição 267 da revista Pesquisa FAPESP.
 
Foram utilizados a [https://garoa.net.br/w/images/Sede-pinheiros-planta.png planta-baixa] da atual sede localizada em Pinheiros, o modelo 3D do [[contribuições|"prisma"]] encontrado no [https://github.com/garoa/Modelos-3D GitHub do Garoa] e o conteúdo presente na página dedicada à [[imprensa]], em especial a reportagem em vídeo da edição 267 da revista Pesquisa FAPESP.
Linha 138: Linha 173:
 
===== Sala 1 =====
 
===== Sala 1 =====
   
  +
{| class="toccolours mw-collapsible mw-collapsed wikitable" style="background-color:#fff;"
''Pensando..''
 
  +
! colspan=2 | Checklist &nbsp;
  +
|-
  +
| Entender o [https://openscad.org OpenSCAD] e modelar ou remodelar objetos neste software. || '''OK'''
  +
|-
  +
| Exportar modelos para .STLs e convertê-los para .INCs usando o ''stl2pov'' encontrado [https://www.povray.org/resources/links/redirect.php/*386*http://www.xs4all.nl/~rsmith/software/#stl2pov aqui]. || '''OK'''
  +
|-
  +
| Criar cena de animação no POV-Ray. || '''TBD'''
  +
|-
  +
| Renderizar. || '''TBD'''
  +
|-
  +
| Converter .PNGs usando o comando <code>mogrify -resize 320x200! -colors 256 -format pcx *.png</code> do [https://imagemagick.org ImageMagick]. || '''TBD'''
  +
|-
  +
| Montar script com os .PCXs e gerar o .DAT através do ''wap.exe'' para rodar no DOSBox. || '''TBD'''
  +
|}
   
  +
[[File:Line_follower_robot_path.png|320px|thumb|Matriz de adjacência do subgrafo usado pelo [[Garoa_Xuning/Feulerwer|Feulerwer]], um robô seguidor de linha que percorre apenas ''caminhos eulerianos''.]]
===== O que é Würfel? =====
 
   
  +
[[File:Mearm_rubik.cleaned.png|320px|thumb|Diagrama e [https://www.worldcubeassociation.org/regulations/#12a algoritmo] usado pelo [[MeArm]].]]
Um cubo ou algo que possua tal forma (e.g., um dado). Saiba como pronunciar ''Würfel'' [https://cdn.duden.de/_media_/audio/ID4119598_394763507.mp3 aqui].
 
   
  +
[[File:Dotmatrix_tetraminos.cleaned.png|320px|thumb|''Tetraminos'' impressos pela [[Pinheiros/Laborat%C3%B3rio_de_Eletr%C3%B4nica#Metam.C3.A1quina_2_-_Prot.C3.B3tipo | Metamáquina 2]].]]
=== Inicialização e desligamento ===
 
   
 
===== O que é Würfel? =====
Escrever um script que exiba uma ilustração ao logar e deslogar na conta do usuário do GNU/Linux.
 
   
 
Um cubo ou algo que possua tal forma (e.g., um dado). Saiba como pronunciar ''Würfel'' [https://cdn.duden.de/_media_/audio/ID4119598_394763507.mp3 aqui].
Inspiração: '''http://plum.cream.org/sky/extras.htm'''
 
 
[[Categoria:Projetos]]
 

Edição atual tal como às 22h05min de 7 de setembro de 2021

Participantes

Objetivo

Estimular a criatividade através da customização de ambientes operacionais GNU/Linux usando o conteúdo dessa Wiki de forma aleatória (e.g., Alt+Shift+X) conforme necessidade da ideia.

Sobre o que se trata esse projeto? Carros?

Sim, e iremos xuná-los com base no conteúdo desse site porque a ideia é realmente deixá-los com a cara do Garoa.

Our cars are no longer cars, they're no longer mechanical vehicles, right? They're essentially computer with wheels.
— S. Kamkar, OWASP, 2016

Para tanto, podemos começar a xunar apenas carros sem rodas.

Por que Xuning?

A escolha do nome de, seja lá o que for, é importante! Abaixo alguns motivos pelo qual o termo xuning foi adotado:

semiosis
  • Porque é aportuguesado.
  • Porque é um pouco mais elegante que outros termos conhecidos na internet.
  • Porque esse projeto prioriza a estética.
  • Porque ajuda a dar sentido a piada sem graça sobre R.I.C.E.
  • Por que não?


Parts

Por hora, aplicando a Netiqueta do Garoa além de seu propósito, algum código será postado no Pastebin e CryptPad até que venhamos a definir um repositório no GitHub ou algo.

Epoch Garoa Y2K38

É basicamente o Epoch Garoa na barra de status usando o slstatus acrescido do glifo U2602.

Epoch garoa y2k38.gif

Abaixo o código que deverá ser salvo como config.h, o arquivo de configuração para o slstatus.

Código: https://pastebin.com/HRbnQt5z

Contador presente no rodapé da Wiki

Pressupondo que esteja usando algum gerenciador de janelas como dwm, execute no seu terminal:

while true; do xsetroot -name "Garoando há $(echo `date +%s` - 1298244863 | bc) segundos!"; sleep 1; done;

Acima a versão em bash do script que se encontra no rodapé dessa Wiki, o qual foi escrito por Juca em JavaScript.

Protetor de Tela

Não no sentido original de protetor de telas para monitores antigos, mas como display hack.

Display hack bitmap.gif

Foi utilizado o slock e o Garoa Bitmap. Para que se obtenha o resultado esperado é necessário aplicar o patch dwmlogo.

Abaixo o código a ser salvo como config.h e usado pelo slock após o patch.

Código: https://pastebin.com/f8SKdKyZ

Além da arte criada por Tony de Marco, contém as cores #00ff00 (verde puro) e #ff9c36 (fósforo âmbar) que sinalizam, respectivamente, a inserção de caracteres e senha incorreta.

Este modelo pode ajudar a compreender o código acima.

Atalhos

Algumas formas de se bloquear a tela do computador, no caso, ativar o slock:

  • Usando-o com o dmenu, basta pressionar Alt+P, digitar slock e pressionar Enter.
  • Usando-o com xssstate é possível definir o comportamento natural de bloqueio de tela após alguns minutos pelo xset.

Um script escrito a gosto no shell é igualmente válido.

Reprodutor de Músicas

Sem música vida, a vida música seria um erro.
— F. Nietzsche, Crepúsculo dos Ídolos, 1889

Abaixo o código que deve ser salvo como cp.ini. Para sistemas *nix, veja isso.

Código: https://pastebin.com/08LN2cnm
Imagem: https://cryptpad.fr/drive/#/2/drive/view/+WBs7XF4z+Nau4tlKAjbrRXlbmyIH1xwEqdlo-vBBlM/

Trata-se do arquivo de configuração para o Open Cubic Player, um programa popular na cultura demoscene com suas origens no MS-DOS. Aliás, o código acima está customizado para o DOSBox.

O Open Cubic Player, quando no Debian GNU/Linux, consegue tocar .MP3 pelo ALSA sem necessidade de configurações adicionais.

Opencp.gif

Modo Würfel

À parte da visualização corriqueira com Fast Fourier Transform (FFT), este módulo é o que realmente importa para o projeto.

Porão 0
Algumas peças de LEGO®
Representação do trajeto entre a fachada e o ThinkPad T400s (e vice-versa)
Checklist  
Estudar a arquitetura da fachada do "castelinho" encontrado aqui. OK
Desenhar o sketch inspirado na versão não transformada dessa obra de M.C. Escher e essa foto. WIP
Escanear e vetorizar no Inkscape. TBD
Exportar para SVG. TBD
Gravar zoom-in e exportar quadros com o comando ffmpeg -i *.mp4 -vf fps=1 frame%d.png do FFmpeg. TBD
Converter .PNGs usando o comando mogrify -resize 320x200! -colors 256 -format pcx *.png do ImageMagick. TBD
Montar script com os .PCXs e gerar o .DAT através do wap.exe para rodar no DOSBox. TBD
Sala 0
Checklist  
Entender o WürfelAnimator "Professional" encontrado aqui. OK
Criar cena de animação no POV-Ray. OK
Renderizar usando o parâmetro +fj para obter arquivos .JPGs ao invés de .PNGs. OK
Entender o Dave's TGA Animator encontrado aqui. OK
Converter .JPGs para .PCXs usando os parâmetros /fpcx, /cmap e /sc320,200 do dta.exe. OK
Montar script com os .PCXs e gerar o .DAT através do wap.exe para rodar no DOSBox. OK

Foram utilizados a planta-baixa da atual sede localizada em Pinheiros, o modelo 3D do "prisma" encontrado no GitHub do Garoa e o conteúdo presente na página dedicada à imprensa, em especial a reportagem em vídeo da edição 267 da revista Pesquisa FAPESP.

Sala0 wuerfel.gif

Abaixo o código para o cutting mat e a folha A3 para uso no POV-Ray bem como a animação CPANI001.DAT para o Open Cubic Player:

Código: https://pastebin.com/p65Az2GU
Arquivo: https://cryptpad.fr/drive/#/2/drive/view/qq9lP2DwcdzfDbdcAFNtBwA6wGlSljF0RoAAJsXrsk4/

Script para o WürfelAnimator "Professional" usando 30 quadros por segundo:

1
1
Sala 0
200 2184 arq%03d.pcx

Arquivo .INI para o POV-Ray:

+fj
-a
+a0.1
+r2
+kc
+kfi0
+kff199
+ki0.0
+kf1.0

Deve ser executado inline informando a resolução e o arquivo .POV (e.g., povray *.ini +w640 +h480 *.pov).

Sala 1
Checklist  
Entender o OpenSCAD e modelar ou remodelar objetos neste software. OK
Exportar modelos para .STLs e convertê-los para .INCs usando o stl2pov encontrado aqui. OK
Criar cena de animação no POV-Ray. TBD
Renderizar. TBD
Converter .PNGs usando o comando mogrify -resize 320x200! -colors 256 -format pcx *.png do ImageMagick. TBD
Montar script com os .PCXs e gerar o .DAT através do wap.exe para rodar no DOSBox. TBD
Matriz de adjacência do subgrafo usado pelo Feulerwer, um robô seguidor de linha que percorre apenas caminhos eulerianos.
Diagrama e algoritmo usado pelo MeArm.
Tetraminos impressos pela Metamáquina 2.
O que é Würfel?

Um cubo ou algo que possua tal forma (e.g., um dado). Saiba como pronunciar Würfel aqui.