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

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
 
(21 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 6: Linha 6:
 
== Objetivo ==
 
== Objetivo ==
   
Estimular a criatividade através da customização de ambientes operacionais GNU/Linux usando o conteúdo dessa Wiki de forma aleatória (i.e., <code>Alt+Shift+X</code>) conforme necessidade da ideia.
+
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? ===
Linha 16: Linha 16:
 
</blockquote>
 
</blockquote>
   
Para tanto, podemos começar a xunar apenas carros sem rodas. O conteúdo do projeto propriamente dito é indefinido, afinal não faria sentido ter o '''ato de criação''' como objetivo primário caso o contrário fosse.
+
Para tanto, podemos começar a xunar apenas carros sem rodas.
   
 
=== Por que Xuning? ===
 
=== Por que Xuning? ===
Linha 22: Linha 22:
 
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 29: 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'' ==
Linha 44: 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 56: 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 92: 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 139: 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.