Please configure your mailserver properly!

Am I the only one who’s sick of getting bounced email to aliases that never ever ever send email, and spammers are obviously forginging headers? How does spamming my alias with bounces help anything?

Here’s an example:

This is the Postfix program at host smtp.gentoo.org.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to postmaster

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

The Postfix program

xxxp@xxxxxx.co.uk (expanded from amd64@gentoo.org): host
a.mx.pengus.net[80.249.110.195] said: 550 This message looks like spam.
This server will not accept spam. (in reply to end of DATA command)

Please, please, please, please configure your mailserver to silently reject spam. bouncing to an innocent group becuse some ass has forged our address does nothing, except makes YOU the spammer.

smartcards

I recently received a replacement smartcard and a RS232 based smartcard reader from Genesi. This time I managed not to brick the cards while setting things up. gentoo seems to have good support for the cards via pcsc-lite and opensc. I was able to accomplish a lot in just a few hours of hacking.

  1. local login support
  2. ssh/ssh-agent support
  3. xscreensaver support
  4. general PAM support(smartcard can be used in place of any PAM password)

The only thing I wish for is some agent to cache my pin number. I suppose I’ll hack out some sort of pam-agent.

Thanks go to Pieter of genesi for sending me more gear.

Modular X on amd64 and xgl

I’ve just finished migrating from X.org 6.8.2 to Modular X 7.0, and everything built like it should. nvidia binary drivers even work as well. Kudos to the x11 team for the hard work. (Migrating to Modular X HOWTO)

After making sure X and GL were working properly, I started to build xgl. Here’s how I did it:

# wget http://www.freedesktop.org/~davidr/xgl-svn_100.tar.bz2
# cvs -d:pserver:anoncvs@cvs.freedesktop.org:/cvs/cairo login
(press Enter for password)
# cvs -d:pserver:anoncvs@cvs.freedesktop.org:/cvs/cairo co glitz glitzinfo
# pushd glitz
# ./autogen.sh --prefix=/opt/fdo/
# make
# make install
# popd
# pushd glitzinfo
# PKG_CONFIG_PATH=/opt/fdo/lib/pkgconfig/ make -f Makefile.glx
# LD_LIBRARY_PATH=/opt/fdo/lib/ ./glitzinfo
# popd

At this point, glitzinfo should have told you a bunch of information about available features and formats. You’ll have poor performance if you don’t have the following:

texture rectangle
texture border clamp
multitexture
texture environment combine

Now it’s time to build the xgl server.

# tar -xjvf xgl-svn_100.tar.bz2
# cd Xserver-6.6.1/
# PKG_CONFIG_PATH="/opt/fdo/lib/pkgconfig/" ./configure --disable-kdriveserver --enable-glx --enable-xglserver --prefix=/opt/fdo
# make
# make install
# cd /usr/bin
# rm X && ln -s /opt/fdo/bin/Xgl X

At this point you can now start X. I use

$ startxfce4

The server seems to be somewhat unstable, but that may be because I’m trying to run 2 displays on one video card. YMMV

To go back to the original X server,

# cd /usr/bin/
# rm X && ln -s Xorg X

I’ll find out on Tuesday if I can have multiple 3D displays when my new video cards arrive.

EDIT: Sorry, no more comments because of nasty spammers

Part 1: tools for win32 development in linux

emerge the following packages to create a development environment:


dev-util/xmingw-binutils
dev-util/xmingw-gcc
dev-util/xmingw-runtime
dev-util/xmingw-w32api
app-emulation/wine

Use the following as a template for win32 makefiles:

CC=i386-mingw32msvc-gcc
CFLAGS=-O2 -pipe -std=c99 -mno-cygwin -mno-sse -mno-sse2 -mno-mmx -mthreads -DWIN32 -D_WIN32 -D_WINDOWS

helloworld.exe: helloworld.o
$(CC) $(CFLAGS) -luser32 -o $@ $?

helloworld.o: helloworld.c helloworld.h
$(CC) $(CFLAGS) -o $@ -c $<

NOTE: Now is not a good time to rice out your cflags. Debugging win32 code is hard enough without the compiler playing tricks on you.

To test your new win32 program:

wine ./helloworld.exe

Part 2 will talk about how to create win32 DLLs and import libraries.

*EDIT* I’m sick of all the lame losers out there that keep spamming my blog, so no more comments until something can be worked out