Uncategorized
Instalando Ruby e Rails no Ubuntu 8.10 - Intrepid Ibex
Está com pressa? Vá direto para o resumo!
Para trabalhar com Ruby e Rails é necessário instalar alguns pacotes.
Primeiro:
sudo apt-get install ruby rdoc ri irb
Descrição dos pacotes instalados via man:
ruby - Interpreted object-oriented scripting language
rdoc1.8 - Generate documentation from Ruby script files
ri1.8 - Ruby Information at your fingertips
irb1.8 - interactive ruby
ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux] irb -v irb 0.9.5(05/04/13)
Agora vou até o site do RubyGem no RubyForge baixar a ultima versão do mesmo.
Instalar o pacote RubyGem do Ubuntu nem sempre é uma boa idéia…
wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz tar xvzf rubygems-1.3.1.tgz cd rubygems-1.3.1/ sudo ruby setup.rb gem1.8 -v 1.3.1
Vamos criar um link simbólico para o comando gem
sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
Este link simbólico é para que quando você digitar o comando “gem” ele chame o “gem1.8″
ls -l /usr/bin/ | grep gem gem -> /usr/bin/gem1.8 gem1.8
Beleza, ruby instalado, gem instalado, agora vamos tentar instalar o Rails.
sudo gem install rails rails -v Rails 2.1.2
Agora vamos testar se o Rails está funcionando corretamente (se não falta alguma coisa a ser instalada).
Vamos criar um projeto novo.
rails Teste cd Teste/ script/generate scaffold User nome:string idade:integer
Ops, o primeiro problema, esqueci de instalar o ssl do ruby.
/usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:229:in `require_frameworks': no such file to load -- openssl (RuntimeError) from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:118:in `process' from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:97:in `send' from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:97:in `run' from /home/gcaixeta/Projetos/Teste/config/environment.rb:13 from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/commands/generate.rb:1 from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' from script/generate:3
Vamos instalalo via apt-get
sudo apt-get install libopenssl-ruby
Novamente vamos tentar gerar o scaffold de exemplo.
script/generate scaffold User nome:string idade:integerAgora vamos tentar rodar o migrate.
rake db:migrate
ops, esqueci de instalar o sqlite3
rake aborted! no such file to load -- sqlite3
Vamos instalar primeiro o programa sqlite3
sudo apt-get install sqlite3
Depois o gem
sudo gem install sqlite3-ruby
Building native extensions. This could take a while... ERROR: Error installing sqlite3-ruby: ERROR: Failed to build gem native extension.
Ops, deu problema na instalação da gem. Ela precisa compilar extensões nativas em C, então tenho que ter instalado os compiladores básicos.
sudo apt-get install build-essential
novamente vamos tentar instalar o gem
sudo gem install sqlite3-ruby
ERROR: Error installing sqlite3-ruby: ERROR: Failed to build gem native extension. /usr/bin/ruby1.8 extconf.rb install sqlite3-ruby extconf.rb:1:in `require': no such file to load -- mkmf (LoadError) from extconf.rb:1
ops, faltou instalar o pacote dev do ruby
sudo apt-get install ruby-dev
Building native extensions. This could take a while... ERROR: Error installing sqlite3-ruby: ERROR: Failed to build gem native extension. /usr/bin/ruby1.8 extconf.rb install sqlite3-ruby checking for fdatasync() in -lrt... yes checking for sqlite3.h... no
ops, faltou instalar o pacote de desenvolvimento do sqlite3
sudo apt-get install libsqlite3-dev
Novamente. vamos tentar instalar o gem do sqlite3
sudo gem install sqlite3-ruby
Building native extensions. This could take a while... Successfully installed sqlite3-ruby-1.2.4 1 gem installed Installing ri documentation for sqlite3-ruby-1.2.4... Installing RDoc documentation for sqlite3-ruby-1.2.4...
Finalmente!
rake db:migrate
script/serverResumo
Instalando o Básico
sudo apt-get install ruby rdoc ri irb libopenssl-ruby sqlite3 build-essential ruby-dev libsqlite3-dev
Instalando o Ruby Gem
wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz tar xvzf rubygems-1.3.1.tgz cd rubygems-1.3.1/ sudo ruby setup.rb sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
Instalando as Gems
sudo gem install rails sqlite3-ruby
Instalando o mongrel
sudo gem install mongrel
Instalando o suporte mysql
sudo apt-get install libmysqlclient15-dev sudo gem install mysql
Vostro 1510 no (x) Ubuntu Hardy 8.04
Finalmente estou com meu note
A primeira coisa a fazer e arancar o InVista
As configurações são as seguintes:
- Core 2 Duo T7250 2GHZ 2MB Cache
- 2 GB de Ram
- HD 250GB 7200
- Video Intel X3100
- Wireless 4965AGN
Ele reconheceu tudo tranquilamente. Só tive um pouco de trabalho para verificar temperatura de CPU (via lm-sensors) e ainda não consegui configurar a tecla de função para controlar o volume.
Software Freedom Day na Unesp de Rio Preto
No último dia 20/set aconteceu na Unesp de São José do Rio Preto o “Software Freedom Day”.
Foi muito massa o evento, contando com a participação do pessoal da Unesp, alguns da Fatec e outros
O evento começou as 13h, cheguei um pouco atrasado ehehe, mas não muito!
Do pessoal que eu já conheciam, estavam o TaQ, Thiago Gonzaga, Thiago Oliveira e alguns outros da Fatec.
Também estava presente minha querida Josiane, que estava interessada em algo referente ao Open Solaris, para o projeto de pesquisa no qual ela está envolvida (um módulo para reconhecimento de voz para o kernel do opensolaris).
O mais legal do evento, é que vi coisas relacionadas a assuntos que ainda não tenho muito conhecimento, tais como:
Configuração de Rede Wireless em Linux
Como eu nunca tive wireless ehehe, nunca tive a chance de ver como funciona esse bixo de verdade. Havia uma placa broadcom em um note com Slack que deu um certo trabalho. Legal que vi como configurar wireless sem ferramentas gráficas, o que influenciou minha escolha pelo xubuntu, ao invés do ubuntu para meu futuro notebook.
Acho que o Gnome tem firulas demais desnecessariamente. A única coisa que eu realmente uso do gnome é o gedit. Fora isso só os temas GTK que podem ser utilizados também com o XFCE do Xubuntu.
Diagramas no RoR
Logo quando cheguei o TaQ estava mostrando o Rails para o Thiago Oliveira, peguei só o finalzinho de um plugin que gera os gráficos dos relacionamentos do ActiveRecord.
Se eu tivesse um trem desses no meu TCC… fiz um esquema de engenharia reversa pelo DBDesigner para colocar o diagrama do banco do MySQL na monografia.
Compilação de Kernel do Linux
Sempre tive medo de “Compilação de kernel” eheheh, no evento um carinha da Kess (cujo não me lembro o nome, sorry) mostrou a configuração do .config e o TaQ baixou os ultimos fontes do kernel (2.6.26.5) e compilou em meros 19min
.
Vimos que não é tão complicado compilar um Kernel, que é mais complicado configurar o .config que segundo aprendemos, uma vez configurado, deve-se fazer uma cópia da cópia da cópia da cópia da cópia da cópia da cópia da cópia da cópia da cópia
KVM e Virtualização
Neste ano que comecei a mecher com virtualização de Sistema Operacional. Já tinha utilizado o VMware, VirtualBox e o outro trem da Microsoft, alguma coisa PC.
O TaQ comentou sobre o KVM. Eu me lembrava de algo relacionado a integração de virtualização ao kernel do linux (2.6), mas sinceramente
eu achava que KVM era alguma GUI do xen para o KDE hehehe.
No meu futuro note, irei colocar ubuntu e virtualizar windows. Agora tenho que estudar mais sobre KVM para verificar o isolamento que isso garante. Não quero que o windows chegue muito perto do meu Linux ehehehe. Pelo o que andei lendo, se eu instalar o KVM o VirtualBox deixa de funcionar :/
Em questão de desempenho o KVM se propõe ser bem melhor que o VirtualBox.
Mas provavelmente devo ficar com o KVM, pois uma das metas deste ano é aprender mais sobre Linux, configuração de servidores e Deploy. (coisas básicas para um sysadmin manter uma futura startup)
…
Fora isso, rolou altos papos, galera jogando, pessoal mexendo em Linux, OpenSolaris, etc.
a url com as informações do evento é essa.
Pena que não aproveitei muito os “comes e bebes”
tinha acabado de comer uma marmita gigante antes de ir para o evento (por isso o atraso eheheh).

