lunes, 17 de diciembre de 2007

compiz-fusion intel i810

los pasos que enumero a continuación son los que realize para instalarlo:

Primero hay que saber que tarjeta grafica tenemos instalada en nuestra computadora con la siguiente instruccion lspci, despues de comprobar que tarjeta tenemos, en mi consola desplego la intel i810, posteriormente hay que bajar los paquetes para la aceleración grafica:

#apt-get install xlibmesa-dri
#apt-get install xlibmesa-gl
#apt-get install mesa-utils

Para probar que tenemos funcionando la aceleración grafica

# glxinfo

y buscamos la linea que dice

direct rendering:

y si está a Yes, (direct rendering: Yes) entonces ya tenemos el soporte habilitado.

Si por alguna razón, microprocesador muy lento, poca memoria RAM, etc. no se ha habilitado la aceleración, verificar en el archivo de configuración /etc/X11/xorg.conf en la sección “Screen”, ejemplo:

Section “Screen”
Identifier “Default Screen”
Device “Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller”
Monitor “Monitor genérico”
DefaultDepth 24
SubSection “Display”
Modes “1280×800″
EndSubSection
EndSection

donde dice 24 reemplazarlo por 16, guardamos y reniciamos el servidor gráfico de nuevo y probamos de vuelta, normalmente tendria que funcionarnos.

Para instalar los paquetes no oficiales por lo que tenemos que agregar en el sources.list

# nano /etc/apt/sources.list

y colocamos(en el caso mio es de debian etch pero se puede adaptar a la distribución que tengas la direccion es desde esta pagina http://shame.tuxfamily.org/repo/?cat=11 ) ojo aqui tienes que verificar que distribucion tienes instalada y seleccionar la adecuada ya sea etch, lenny o sid:

deb http://download.tuxfamily.org/shames/debian-etch/desktopfx/stable/ ./

guardamos y salimos, despues hay que agregar la clave del repositorio:

#sudo wget http://download.tuxfamily.org/shames/A42A6CF5.gpg -O- | apt-key add -


Ahora deberemos actualizar nuestra lista de repositorios para que funcione correctamente y reconozca nuestros repositorios nuevos. Tecleamos entonces:

sudo apt-get update

Hay que configurar el xorg.conf, para dar de alta el acelerador grafico para ello desde la consola hay que ingresar la siguiente linea.

pico /etc/X11/xorg.conf

Una ves que entramos hay que editar las siguientes partes:

- Agregamos la seccion Extensions
Section "Extensions"
Option "Composite" "Enable"
EndSection

Modificamos la seccion Device:
Section "Device"
Identifier "Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device"
Driver "i810"
BusID "PCI:0:2:0"
Option "RenderAccel" "true" # render accel is enabled by default
Option "AllowGLXWithComposite" "true"
EndSection

Modificamos la seccion Screen:
Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device"
Monitor "EPSON PJ"
DefaultDepth 16
Option "AddARGBGLXVisuals" "True"
SubSection "Display"
Depth 16
Modes "1280x1024" "1280x960" "1280x800" "1024x768" "832x624" "800x600" "720x400" "640x480"
EndSubSection
EndSection

Instalar los paquetes de Compiz Fusion

Dependiendo del entorno escritorio en el cual deseamos ver los efectos gráficos, es conveniente instalar…

# apt-get install compiz-fusion-kde (para KDE)
# apt-get install compiz-fusion-gnome (para Gnome)
# apt-get install compiz-gnome emerald emerald-themes (para XFCE)
# apt-get install compiz-fusion-all (o todos los paquetes para cualquier entorno)

Y listo el compiz fusion debe de estar funcionando despues de dar una reiniciada.

Aqui las paginas de las cuales me guie:

http://debinfor.cl/blog/?page_id=53

http://subnacion.com/?cont=lec&art=444

http://shame.tuxfamily.org/repo/?cat=11

http://bitnegro.blogspot.com/2007/08/compiz-fusion-en-debian-lenny-con.html

http://www.linuxarg.org/modules/ipboard/index.php?showtopic=328&st=0&#entry3233

martes, 4 de diciembre de 2007

Conexion a mysql con java en netbeans parte 2

En la anterior entrada mostré como hacer una conexión de forma cencilla, y que al final nos regresaba un mensaje desde la consola del editor. Ahora procederemos a hacer una conexion un poco mas avanzada, bueno en el sentido de que lo realizaremos mediante botones y cajas de texto, algo ya mas acoplado a la realidad.

Para empezar les voy a mencionar como crear una tabla desde la consola y digitamos para entrar a mysql

shell> mysql -h host -u user -p
Enter password: ********


Ahora creamos la base de datos:

mysql> CREATE DATABASE base;

y luego debemos de crear una tabla

mysql> CREATE TABLE usuario (nombre VARCHAR(20), ciudad VARCHAR(20);
colocamos la información

mysql> INSERT INTO usuario
-> VALUES ('s','toluca');

Una ves que llenemos la tabla nos vamos a netbeans y abrimos un archivo nuevo de GUI un jFrame Form y comenzamos a colocar el codigo, pero antes de continuar olvidaba que se tienen que crear los label y textbox correspondientes a los campos que tengamos que el caso de la base de datos que creamos solo son dos(para crearlos es en el lado de diseño):

//Aqui colocamos las librerias que se requieren para que se realize la conexion

package clientes;
import java.awt.*;
import java.sql.*;
import java.awt.event.*;
import javax.swing.*;
public class dbojxs extends javax.swing.JFrame {

private Connection cnx;
Statement stmt;
ResultSet rset;


//En esta parte se encuenctra el constructor y donde creamos los metodos
publix dbojsx () {

jButton1.addActionListener(new oyente());
jTextField1.setText("");
jTextField2.setText("");

}

//El main de abajo aparece automaticamente

public static void main(String args[]){
java.awt.EventQueue.invokelater(new Runnable){
public void run(){
new dbojsx().setVisible(true);
}
});
}

//Se crea el oyente para el boton

private class oyente implements ActionListener{

public void actionPerformed(ActionEvent event)
{

try{
String r="";

if (r.equals(jTextField1.getText())&&r.equals(jTextField2.getText())){

JOptionPane.showMessageDialog(null,"no se puede introducir los datos ver si no hay espacio en blanco");
}
else{
//Aqui es donde se registra en controlador

DriverManager.registerDriver(new org.gjt.mm.mysql.Driver());
// donde equipo: es el equipo en el que esta la base de datos
//base: es la base de datos que creamos
//y el usuario y contraseña

cnx=DriverManager.getConnection("jdbc:mysql://equipo:3306/base","usuario","contraseña");
stmt=cnx.createStatement();

//usuario es el nombre de nuestra base de datos
//nombre y ciudad son los campos

stmt.executeUpdate("INSERT INTO usuario(nombre, ciudad)VALUES('"+ jTextField1.getText()+"','" + jTextField2.getText()+ "');");

JOptionPane.showMessageDialog(null,"guardado el dato");

jTextField1.setText("");
jTextField2.setText("");

cnx.clse();
}
}catch (SQLException sqle)
{
System.out.println(sqle.getMessage());
System.exit(0);
}
}
}
//Aqui se crean las variables del diseño de forma automatica

//Variables declaration - do not modify

private javax.swing.JButton jButton1;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
//End of viariables declaration


Y es todo, lo ejecutamos y al llenar los datos deben de guardarse ya en la base que creamos, es importante mencionar que fue diseñado desde el netbeans y creando los botones desde la opción de diseño, del manual en el que me base todas las variables se declaran desde el inicio y es algo asi


package clientes;
import java.awt.*; //CODIGO PARA DAR DE ALTA A PROVEEDORES CON BASE DE DATOS
import java.sql.*;
import java.awt.event.*;
import javax.swing.*;

public class clientes extends JFrame {
private JLabel label1, label2, label3, label4, label5,label6,label7;
private JTextField textField1, textField2, textField3,textField4,textField5,textField6;
private JPasswordField passwordField;
private JButton boton1;
Connection cnx;
Statement stmt;
ResultSet rset;

public clientes()
{
super( "ALTA_clientes" );

Container container = getContentPane();
container.setLayout( new FlowLayout() );
container.setBackground( Color.BLACK);

label1 = new JLabel( "Nombre" );
label1.setToolTipText( "inserte su nombre" );
label1.setBackground(Color.darkGray);
label1.setForeground(Color.RED);
container.add( label1 );
textField1 = new JTextField( 30 );
textField1.setBackground(Color.lightGray);
container.add( textField1 );

label2 = new JLabel("Direccion");
label2.setForeground(Color.RED);
label2.setToolTipText( "cuale es su direccion" );
container.add(label2);

textField2=new JTextField(30);
textField2.setBackground(Color.lightGray);
container.add( textField2 );

label3=new JLabel("Telefono");
label3.setForeground(Color.RED);
label3.setToolTipText("inserte su telefono");
container.add(label3);
textField3=new JTextField(30);
textField3.setBackground(Color.lightGray);
container.add(textField3);

label4 = new JLabel("e-mail");
label4.setForeground(Color.RED);
label4.setToolTipText( "@" );
container.add(label4);
textField4=new JTextField(30);
textField4.setBackground(Color.lightGray);
container.add( textField4 );


boton1 = new JButton( "Guardar" );
boton1.setForeground( Color.RED);
boton1.setBackground(Color.black);

container.add( boton1 );


escuchador escucha=new escuchador();

boton1.addActionListener(escucha);
setSize(410, 217 );
setVisible( true );

} // end constructor

private class escuchador implements ActionListener {


public void actionPerformed( ActionEvent event )
{

try {
String r=" ";


if(r.equals(textField1.getText())&&
r.equals(textField2.getText())&&
r.equals(textField3.getText())&&
r.equals(textField4.getText())){

JOptionPane.showMessageDialog(null,"no se puede introducir los datos ver si no ay espacio en blanco");
}
else{




DriverManager.registerDriver(new org.gjt.mm.mysql.Driver());
cnx = DriverManager.getConnection("jdbc:mysql://127.0.0.1/almacen","root","");
stmt = cnx.createStatement();






stmt.executeUpdate("INSERT INTO proveedores(nombre, direccion, telefono, email) VALUES ('" + textField1.getText()+ "','" + textField2.getText() + "','" + textField3.getText()+"','" + textField4.getText()+ "');");

JOptionPane.showMessageDialog(null,"guardado el dato");


textField1.setText(" ");
textField2.setText(" ");
textField3.setText(" ");
textField4.setText(" ");
cnx.close();
}
} catch (SQLException sqle)
{
System.out.println(sqle.getMessage());
System.exit(0);
}
}
}
}

Las paginas de donde me base son de:

http://www.mygnet.net/ -- Muy buena y recomendada

domingo, 2 de diciembre de 2007

Windows Vista, uno de los peores productos tecnológicos de todos los tiempos.

El listado lo ha elaborado la prestigiosa publicación C|Net, en un artículo, "Top ten terrible tech products", en el que repasa los peores productos tecnológicos de todos los tiempos.

1. Sinclair C5
2. Barcode Battler
3. The Squircle
4. Gizmondo
5. Tamagotchi
6. Apple Puck Mouse
7. Atari Jaguar
8. Amstrad E-m@iler Telephone
9. Sony rootkit CDs
10. Windows Vista.

Literalmente y tal como traduce Enrique Dans en su bitácora: "Cualquier sistema operativo que provoque una campaña pidiendo la reintroducción de su predecesor merece ser calificado como tecnología terrible. Cualquier sistema operativo que haga que los fabricantes de PCs introduzcan silenciosamente una opción de downgrade a la edición previa merece ser calificado como tecnología terrible. Cualquier sistema operativo que necesite seis años para su desarrollo pero que provoque el odio instantáneo de hordas de entusiastas y profesionales del PC merece ser calificado como de tecnología terrible.

Windows Vista cumple todo lo anterior. Su incompatibilidad con el hardware, su obsesivo requerimiento de interacción humana para tomar decisiones de seguridad en interminables alertas con ventanas de diálogo, y su uso abusivo del odiado DRM, por no mencionar su falta de aporte o necesidad como mejora son sólo unos cuantos ejemplos de porqué este caro sistema operativo merece la última posición en nuestra lista de tecnologías terribles".


VIA:Hispamp3