
Os japoneses inventaram uma máquina fotográfica que não precisa de bateria: basta rolar um dínamo que você terá ela funcionando por 40 segundos!
Boa!
Fonte: G1
No Slackware 10.0 o MySQL já vem não funcionando de fábrica, para arrumá-lo, siga os seguintes passos num xterm, rxvt, konsole ou algo parecido:
bash: su
bash:
bash: su mysql
bash: mysql_install_db
bash: exit
bash*: mysqladmin password
*opcional!!
bash: /etc/rc.d/rc.mysqld restart
apt-get install imagemagick
pico megaultra-conversor.sh
for arq in *.$1; do convert $arq $(echo $(echo $arq | cut -d. -f1).$2); done;
for arq in *.$1; do convert $arq -depth 8 -type TrueColor $(echo $(echo $arq | cut -d. -f1).$2); done;
chmod a+x megaultra-conversor.sh
./megaultra-conversor.sh bmp jpg
[Xdmcp] Enable=false2. Dentro do arquivo "Xaccess", descomente a linha:
Basta alterá-la para:
[Xdmcp] Enable=true
# * #any host can get a login window
X :2 -query ip.do.servidor2. Ou, para abrir já no boot, edite o arquivo "/etc/rc.d/rc.4 ou 5", pondo a linha no final e boa sorte:
/usr/X11/bin/X -query ip.do.servidor
Usuário: rootCONVERSAR 2 XOs POR SSH
Senha: apenas de enter
# iwconfig eth0 essid teste channel 7 mode ad-hoc
# ifconfig eth0 10.0.0.1 netmask 255.255.255.0 up
(ok, varie o IP para cada máquina...10.0.0.2, 10.0.0.3, etc)
#iwlist scanning
(apenas para acompanhar se as redes estão sendo criadas)
# passwd
(o root vem sem senha, coloque alguma para poder fazer o ssh)
# ssh 10.0.0.1
$ wget http://dev.laptop.org/pub/firmware/q2d03/q2d03.romAgora vamos copiar o build. Iremos escolher a versão devel, por ser a mais atual (e deve ser jffs2, pois estamos instalando num XO e não num emulador)
(baixando a ROM, para atualizar o firmware posteriormente...copie para o pendrive)
$ wget http://..../olpc-redhat-stream-development-devel_jffs2.imgPronto! Ao listar os arquivos do pendrive, você deverá ter algo como:
(renomeie para qualquercoisa.img e copie para /boot, no pendrive)
$ wget http://..../olpc-redhat-stream-development-devel_jffs2.img.crc
(renomeie para qualquercoisa.crc e copie para /boot, no pendrive)
/q2d03.romOk, remova o pendrive do seu computador e vamos colocá-lo no XO.
/boot/imagem.img
/boot/imagem.crc
ok flash u:/q2d03.romPronto! É só rebootar!
(para sobregravar a nova firmware)
ok copy-nand u:/boot/imagem.img
(para sobregravar o sistema operacional)
Para falar de bots para mensageiros instantâneos, é relevante citar quando o primeiro MI foi lançado.1999 (___) - Ecration é fundada
Bot para publicação em blogs2002 (___) - MessageCast é fundada
O Jaiku é um dos principais representantes do microblogging, low-effort mini-blog ou tumblelog. Nada mais é do que publicar em uma página web utilizando algum método ágil, por exemplo, mensageiros instantâneos ou SMS.2006 (mar) - Twitter é fundada
O Twitter é o maior concorrente do Jaiku.2006 (mai) - Microsoft lança campeonato para avaliar melhores bots
Bavária contratou a empresa Euro RSCG 4D, que realizou parceria entre Akonix e IM Interactive Corp para a criação do bot.
A empresa Colloquis desenvolve bots que podem ser acessados por MSN. Utilizam técnicas de processamento de linguagem natural. Eles criaram o BuddyScript, linguagem de programação para bots.
O bot desenvolvido chama-se alice@worldofalice.com (MSN), é um dos mais completos que já vi. Ele dá o significado de palavras, faz contas, dá a temperatura, envia emails, conta piadas, informa sobre filmes, mostra vídeos do youtube, tem rádio, traduz palavras e tem joguinhos....ufa!
"Microsoft plans to take advantage of Colloquis Internet bot technology in an application called Windows Live Agents, a conversational application that users can interact with via Windows Live Messenger."
Bot em que os usuários cadastram fofocas sobre celebridades e estas são retransmitidas.2007 (___) - Gozub é lançado
Versão brasileira do Twitter/Jaiku2007 (fev) - IMified é fundada
1. Remova o audacity atual
$ sudo apt-get remove audacity
2. Faça download do pacote antigo em http://packages.ubuntu.com/dapper/allpackages
$ wget http://mirrors.kernel.org/ubuntu/pool/universe/a/audacity/audacity_1.2.4b-2ubuntu2_i386.deb
3. Pronto, agora é só instalar a versão antiga
$ sudo dpkg -i audacity_1.2.4b-2ubuntu2_i386.deb
oi jao!Ficará assim:
*João:* td bom?
*me:* td!
*João:* tenho q ir...
*me:* até...
me: oi jao!
João: td bom?
me: td!
João: tenho q ir...
me: até...
http://img2.orkut.com/images/medium/0/85500000.jpgQue tem a estrutura:
http://imgSERVIDOR.orkut.com/images/TAMANHO/BLA/ID.jpgOnde:
http://mail.google.com/mail/photos/email@gmail.comVale notar que é preciso estar logado para receber a foto. Além disso,
../modelo/acm_proc_article-sp.cls:35:File `amssymb.sty' not found. \usepackageEu instalei o pacote "texlive" e tudo foi resolvido
$ sudo apt-get install texliveobs1: ah, se mesmo assim algum pacote faltar, vá no site da CTAN e baixe manualmente. Basta deszipar o pacote, dar make e mover o arquivo .sty gerado para o diretório do .tex.
$ tex pacote.insobs3: se vc se irritar e cansar de ficar criando um por um, vc pode instalar o pacote texlive-full, que irá instalar MUITA coisa! São 326 MB de download, mas provavelmente irá parar de dar pau :
$ sudo apt-get install texlive-full
import java.net.URL;
import java.net.URLEncoder;
/*
* codifica valores para serem passados pela url
*/
public static String _urlEncode(String valor) {
String retorno = "";
try {
retorno = URLEncoder.encode(valor, "UTF-8");
} catch (Exception e){}
return retorno;
}
Se foi útil, deixe um comentário vai!
(não precisa autenticar)
(obs: selecione o texto e dê copiar e colar, caso queira ler a parte cortada)
import java.io.*;
import java.net.URL;
import java.io.DataInputStream;
/*
* Acessa uma URL e retorna uma string contendo a página
*/
public static String getURL(String endereco) {
String retorno = "";
String temp = "";
try {
URL url = new URL(endereco);
BufferedReader pagina = new BufferedReader(new InputStreamReader(url.openStream()));
while( (temp = pagina.readLine()) != null ) retorno = retorno + temp + "\n";
pagina.close();
} catch(IOException e) {
e.printStackTrace();
}
return retorno;
}
try {BufferedReader in = new BufferedReader(new FileReader("arquivo.txt"));
String linha = in.readLine();
in.close();
} catch (IOException e) {System.out.println("Erro!");
}
$ sudo apt-get remove --purge apache2 apache2-common php5Para colocar tudo de novo:
$ sudo apt-get clean
(o --purge que irá apagar os arquivos de configuração)
$ sudo apt-get install apache2 php5Por fim, informamos o apache que ele deve processar os arquivos .php, ao invés de fazer a burrice de dar o nosso código-fonte php de bandeja pra quem visita o site, através do download de arquivos .phtml!
$ sudo ln /etc/apache2/mods-available/php5.* /etc/apache2/mods-enabled -sAh, não esqueça de limpar o cache do firefox ao fazer os testes....o reload irá continuar te enviado o .php caso o cache não seja limpo.
$ sudo /etc/init.d/apache2 restart
Suponha que vc tenha um script que execute um programa e deixa-o em background, o que é muito comum quando se quer deixar um processo rodando eternamente em um servidor.
Para executar o programa, crie um arquivo texto assim:
Bom, a primeira linha executa o programa chamado "meu_programa" e libera o terminal, indicado pelo caracter "&". Sem esse símbolo, assim que vc fechar o terminal (ou ssh) o processo também morrerá.1 meu_programa &
2 echo "$!" > pid.txt;
colocará
dentro dele o pid do último processo que foi para o background. Isso é indicado pelos sinais "$!". Assim, temos armazenado qual o pid do processo que executamos na linha 1.
Bom, agora basta criar um segundo script, que irá matar aquele processo específico, caso esteja rodando. Abra um novo arquivo em um editor de texto e ponha isso:
1 if [ -f pid.txt ]; then
2 echo Matando processo com PID $(cat pid.txt)...
3 kill $(cat pid.txt)
4 rm pid.txt
5 fi
A linha 1 verifica se o arquivo "pid.txt" existe. Caso isso ocorra, significa que o processo deve estar rodando. O comando "$(cat pid.txt)" irá ler o conteúdo do arquivo, pelo comando cat. O resultado, que é o número do processo, é enviado para o "comando de fora", o kill, que irá encerrar o processo. Por fim, o rm apaga o arquivo, já que o processo foi encerrado.
$ javac -cp '.:smack.jar:smackx.jar' *.java
$ java -cp '.:smack.jar:smackx.jar' Botsd
/*
* Mantém um bot para gtalk
*/
import org.jivesoftware.smack.*;
import org.jivesoftware.smack.packet.Presence;
import org.jivesoftware.smack.packet.Packet;
import org.jivesoftware.smack.packet.Message;
import org.jivesoftware.smack.PacketListener;
import org.jivesoftware.smack.filter.PacketFilter;
import org.jivesoftware.smack.filter.PacketTypeFilter;
import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.XMPPConnection;
public class Botsd {
static XMPPConnection conexao;
public Botsd() {}
public static void main(String args[]) {
// configs do gtalk
ConnectionConfiguration config = new ConnectionConfiguration(servidor, porta, servico);
config.setSASLAuthenticationEnabled(true);
config.setReconnectionAllowed(true);
conexao = new XMPPConnection(config);
// tentando conectar
System.out.println("[ .... ] Tentando conectar... ");
try {
conexao.connect();
System.out.println("[ OK ] Conectado.");
// tentando logar
System.out.println("[ .... ] Tentando logar...");
try {
conexao.login(usuario, senha);
System.out.println("[ OK ] Logado.");
// envia presenca
System.out.println("[ .... ] Atualizando presenca e status...");
Presence presenca = new Presence(Presence.Type.available);
presenca.setStatus("Oi gente!");
conexao.sendPacket(presenca);
System.out.println("[ OK ] Atualizado.");
PacketFilter meuFiltro = new PacketTypeFilter(Message.class);
conexao.addPacketListener(criaListener(), meuFiltro);
try {
// loop infinito, aguardando mensagens...
System.out.println("[ .... ] Ouvindo...");
while(true) {
Thread.sleep(1000);
}
} catch (Exception e) {};
} catch (XMPPException e) {
System.out.println("[ ERRO ] Nao consegui logar!");
}
} catch (XMPPException e) {
System.out.println("[ ERRO ] Nao consegui conectar no servidor!");
}
}
/*
* Aqui esta definido o metodo que ira manipular as mensagens recebidas...
*/
public static PacketListener criaListener() {
PacketListener meuListener = new PacketListener() {
public void processPacket(Packet pacote) {
// pega dados relevantes
String mensagem = ((Message)pacote).getBody();
String origem = pacote.getFrom();
Integer resultado = Integer.parseInt(mensagem) * 2;
String retorno = mensagem+" * 2 = "+resultado;
enviaMensagem(origem, retorno);
}};
return meuListener;
}
/*
* Envia mensagem para o destino especificado...
*/
public static void enviaMensagem(String destino, String mensagem) {
MessageListener meuMessageListener;
meuMessageListener = new MessageListener() {public void processMessage(Chat chat, Message message) {}};
Chat chat = conexao.getChatManager().createChat(destino, meuMessageListener);
try {
chat.sendMessage(mensagem);
} catch (XMPPException e) {
System.out.println("[ ERRO ] Nao consegui enviar mensagem para "+destino);
}
}
}
$ jar -tvf arquivo.jarDepois, vá no seu HelloWorld.java (seu código-fonte), e dê um import, tipo esse:
(irá mostrar os caminhos para os .class)
import org.jivesoftware.smack.*;Como nem tudo é perfeito nesse mundo, e vc não pode simplesmente dar include, como quem usa php, então vc deve falar sobre o .jar na hora de compilar e na hora de executar...
(coloque o caminho retornado pelo comando anterior, trocando as "/" por ".")
$ javac -cp ".:arquivo.jar" HelloWorld.javaE para rodar, faça isso:
(neste caso, tudo deve estar na mesma pasta)
$ java -cp ".:arquivo.jar" HelloWorldImportante notar: na hora do "-cp" não troque o ":" por ";"...vc perderá duas horas com os paths definidos de maneira errada...
$ sudo updatedbCaso não exista, no kubuntu 7.04, basta digitar:
(irá atualizar a lista de arquivos que existentes)
$ sudo locate javac | grep bin
(irá mostrar todos os arquivos chamados javac, que tenham "bin" no caminho)
$ sudo apt-get install sun-java5-jreEle irá baixar uns 50 MB e voa-lá! Tudo deve dar certo...
(para executar os programas)
$ sudo apt-get install sun-java5-jdk
(para compilar os programas)
Exception in thread "main" java.lang.UnsupportedClassVersionError: Programinha (Unsupported major.minor version 49.0)Eu não estou com tempo pra ver o que é isso....mas se vc digitar
$ sudo update-alternatives --config javaIrão aparecer várias alternativas...bom, no meu caso apareceram 4 "javas" para serem utilizados. Vc pode chutar um por um e ver quando dá certo...eu escolhi o
/usr/lib/jvm/java-1.5.0-sun/jre/bin/javaE agora funfa!
http://bichos.uol.com.br/guiasderacas/ult3994u67.jhtmVira a pequena e pouco feiosa URL:
http://tinyurl.com/2wkzlpÉ isso...
$ convert figura.pdf figura.jpgFácil não?
$ convert eu.jpg -resize 50% eu_menor.jpg
Iniciar -> Informações do Sistema
Centro de Informações do KDE -> PCI (lado esquerdo)
(olhe na direita, lá embaixo..tipo "nVidia Corporation NV34 (GeForce FX 5200)"
Download drivers -> Graphics Driver3. Feche o X (modo gráfico).
GeForceFX Series -> LinuxX86
(feche todas as janelas e dê Ctrl+Alt+F1 para abrir terminal)4. Vá para a pasta aonde vc baixou o driver execute-o como root.
sudo killall kdm (para quem usa KDE)
chmod a+x NVIDIA-Linux-x86_64-100.14.11-pkg2.run5.Reinicie e tá tudo blz.
sudo ./NVIDIA-Linux-x86_64-100.14.11-pkg2.run
(Siga as instruções do programa, lendo ATENTAMENTE)
sudo kdm (reinicia o KDE)