• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Ubuntu nvidia guide(explanation how to install)

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.
Not fully sure on that genre request. I do know Sacred is for Linux and seems like it would be fun.

I am more into RTS and puzzle type games. Battlezone 2100 :thup: Also some of the simulators. I like LinCity-NG also.
Some cards and Mahjong. Plus Logic games are usually what I play.
 
Funny how there's a lot of great free and open software for Linux until it comes to games... why is this?

Because of the life cycle. A word processor is developed and improved over time, but people do not need a constant stream of new word processors... in fact, that would be undesirable. Games are played briefly, then tossed aside for something new and different. This short period of use after a long period of development makes it less appealing for open source developers to work on them. What would you rather write, something people will use indefinitely (e.g. firefox, openoffice, kde/gnome, gimp, etc.) or somethign people will play for a month and within a few years will be forgotten?

I can see Fudge's point though. It's a lot faster and easier for software developers to program applications and games on closed hardware (Macs and consoles) and the code can be highly optimized for it.

Actually, software running on Linux is better optimized for specific hardware as individuals can compile it to optimize it for their machines. For example, my machine is optimized with instructions for an amdfam10 (in gcc terms, that's the -march I used). It won't even run on an A64 X2 as amdfam10 adds support for instructions only available in these processors. None of my software would run on a C2Q either. When you get commercial software, it's either built for a generic x86 (e.g. i386), or something similar, so it's not anywhere near as optimized. Many newer products will require an i586 or i686 (or basic AMD64). An i686, however, does not have SSE (any level), 3dnow! (any level), mmxext (I think), abm, or many other useful instructions.

Then again, I do probably fall a bit into the group of what are jokingly referred to sometimes as "Gentoo ricers".
 
So you take like, for example, Firefox source code and compile it for your exact processor?

That's pretty interesting.

That's the appeal of source-based distros (Gentoo is the most popular).
Most distros are now optimised for i686(P4/Athlon) or x64(64 but processors) but older versions were often made for i386 (YES a 386 processor, it was surpassed by the 486 at 25mhz) but it seems that most have updated to i686.
However, it can take a significant amount of time to install this on an older computer - including download time it can take ~6-8 hours to install gentoo and gnome on my Athlon x2 3800 (this includes time to re-read the install manual; it takes a lot longer on my 750mhz Athlon) This could probably be stripped to 3-4 hours if i knew what i was doing better. It would probably take MRD 10-15min because he stores his compiled programs on a local server so he doesn't have to compile them on each computer.

Overall it's really neat, but can be a real PITA.
 
So you take like, for example, Firefox source code and compile it for your exact processor?

That's pretty interesting.

Yup. For example, on my Phenom 9950 BE this is how my firefox package was built:

Code:
$ cat  /var/db/pkg/www-client/mozilla-firefox-3.0.3/CFLAGS 
-march=amdfam10 -pipe -fPIC -Wno-return-type -w

On my Athlon XP 3200+:

Code:
$ cat /var/db/pkg/www-client/mozilla-firefox-3.0.1/CFLAGS 
-march=athlon-xp -pipe -Wno-return-type -w

You can add other optimizations if you want. I use -O2, but -O3 is a bit faster sometimes, especially on computers with fast IO. You can also use -Os and optimize for size on machines with limited space.

In Gentoo, you set use flags too, which determine compile time options.

Take, for example, mplayer:

Code:
$ equery uses mplayer
[ Searching for packages matching mplayer... ]
[ Colour Code : set unset ]
[ Legend : Left column  (U) - USE flags from make.conf              ]
[        : Right column (I) - USE flags packages was installed with ]
[ Found these USE variables for media-video/mplayer-1.0_rc2_p27725-r1 ]
 U I
 + + 3dnow               : Adds support for 3dnow multimedia processor instructions
 + + 3dnowext            : Enable 3dnowext cpu instructions
 + + X                   : Adds support for X11
 + + a52                 : Enables support for decoding ATSC A/52 streams used in DVD
 + + aac                 : Enables support for MPEG-4 AAC Audio
 + + aalib               : Adds support for media-libs/aalib (ASCII-Graphics Library)
 + + alsa                : Adds support for media-libs/alsa-lib (Advanced Linux Sound Architecture)
 - - altivec             : Adds support for optimizations for G4 and G5/ppc970 processors
 - - amrnb               : Enables Adaptive Multi-Rate Audio support (Narrow Band)
 - - amrwb               : Enables Adaptive Multi-Rate Audio support (Wide Band)
 - - arts                : Adds support for aRts: the KDE sound daemon
 + + bidi                : Enables bidirectional language support
 - - bindist             : Flag to enable or disable options for prebuilt (GRP)  packages (eg. due to licensing issues)
 - - bl                  : Enables Blinkenlights support in mplayer
 + + cddb                : Access cddb servers to retrieve and submit information about compact disks
 - - cdio                : Use libcdio for CD support (instead of cdparanoia)
 + + cdparanoia          : Enables cdparanoia (audio CD ripper) support
 - - cpudetection        : Enables runtime cpudetection (useful for bindist, compatability on other CPUs)
 - - custom-cflags       : Enables custom CFLAGS (UNSUPPORTED)
 - - custom-cpuopts      : Fine-tune custom CPU optimizations (UNSUPPORTED)
 - - debug               : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see http://www.gentoo.org/proj/en/qa/backtraces.xml
 - - dga                 : Adds DGA (Direct Graphic Access) support for X
 - - dirac               : Enable Dirac video support (an advanced royalty-free video compression format) via the reference library: dirac.
 - - directfb            : Adds support for DirectFB layer (library for FB devices)
 + + doc                 : Adds extra documentation (API, Javadoc, etc)
 + + dts                 : Enables DTS Coherent Acoustics decoder support
 + + dv                  : Enables support for a codec used by many camcorders
 + + dvb                 : Adds support for DVB (Digital Video Broadcasting)
 + + dvd                 : Adds support for DVDs
 - - dxr3                : Enable DXR3/H+ video output
 - - enca                : Enables support for charset discovery and conversion
 + + encode              : Adds support for encoding of audio or video files
 + + esd                 : Adds support for media-sound/esound (Enlightened Sound Daemon)
 - - fbcon               : Adds framebuffer support for the console, via the kernel
 + + ftp                 : Adds FTP (File Transfer Protocol) support
 - - ggi                 : Adds support for media-libs/libggi (non-X video api/drivers)
 + + gif                 : Adds GIF image support
 + + gtk                 : Adds support for x11-libs/gtk+ (The GIMP Toolkit)
 + + iconv               : Enable support for the iconv character set conversion library
 + + ipv6                : Adds support for IP version 6
 - - jack                : Adds support for the JACK Audio Connection Kit
 + + joystick            : Add support for joysticks in all packages
 + + jpeg                : Adds JPEG image support
 + + kernel_linux        : <unknown>
 - - ladspa              : Enables the ability to support ladspa plugins
 + + libcaca             : Add support for colored ASCII-art graphics
 + + lirc                : Adds support for lirc (Linux's Infra-Red Remote Control)
 + + live                : Enables live.com streaming media support
 + + lzo                 : Enables support for lzo compression
 + + mad                 : Adds support for mad (high-quality mp3 decoder library and cli frontend)
 - - md5sum              : Enables md5sum video output
 + + mmx                 : Adds support for optimizations for Pentium MMX and Athlon class processors
 + + mmxext              : Enables mmx2 support
 + + mp2                 : Enables support for twolame, an MP2 audio library
 + + mp3                 : Add support for reading mp3 files
 + + musepack            : Enable support for the musepack audio codec
 + + nas                 : Adds support for network audio sound
 - - nemesi              : Enable Nemesi Streaming Media support
 + + openal              : Adds support for the Open Audio Library
 + + opengl              : Adds support for OpenGL (3D graphics)
 + + oss                 : Adds support for OSS (Open Sound System)
 + + png                 : Adds support for libpng (PNG images)
 + + pnm                 : Add PNM video output option, to create PPM/PGM/PGMYUV images
 - - pulseaudio          : Adds support for PulseAudio sound server
 - - pvr                 : Enable Video4Linux2 MPEG PVR
 + + quicktime           : Adds support for OpenQuickTime
 - - radio               : Enable V4L2 radio interface and support
 - - rar                 : Enable Unique RAR File Library
 + + real                : Adds real video support
 - - rtc                 : Enables usage of the linux real time clock. The alternative is software emulation of rtc
 + + samba               : Adds support for SAMBA (Windows File and Printer sharing)
 - - schroedinger        : Enable Dirac video support (an advanced royalty-free video compression format) via libschroedinger (high-speed implementation in C of the Dirac codec).
 + + sdl                 : Adds support for Simple Direct Layer (media library)
 - - speex               : Adds support for the speex audio codec (used for speech)
 + + srt                 : Internal SRT/SSA/*** (SubRip / SubStation Alpha) subtitle support
 + + sse                 : fast floating point optimization for PentiumIII+ class chips
 + + sse2                : faster floating point optimization for SSE2 capable chips
 - - ssse3               : faster floating point optimization for SSSE3 capable chips (Intel Core 2 and later chips)
 - - svga                : Adds support for SVGAlib (graphics library)
 - - teletext            : Support for TV teletext interface
 - - tga                 : Enables Targa video output
 + + theora              : Adds support for the Theora Video Compression Codec
 + + truetype            : Adds support for FreeType and/or FreeType2 fonts
 + + unicode             : Adds support for Unicode
 + + v4l                 : Enables video4linux support
 - - v4l2                : Enable video4linux2 support
 - - video_cards_mga     : <unknown>
 - - video_cards_s3virge : <unknown>
 - - video_cards_tdfx    : <unknown>
 - - video_cards_vesa    : <unknown>
 - - vidix               : Support for vidix video output
 + + vorbis              : Adds support for the OggVorbis audio codec
 - - win32codecs         : use win32codecs package for dll avi decoding support (wmv and what not)
 + + x264                : Enable h264 encoding using x264
 + + xanim               : Enables support for xanim based codecs
 - - xinerama            : Add support for the xinerama X11 extension, which allows you to stretch your display across multiple monitors
 - + xscreensaver        : Adds support for XScreenSaver extension
 + + xv                  : Adds in optional support for the Xvideo extension (an X API for video playback)
 + + xvid                : Adds support for xvid.org's open-source mpeg-4 codec
 + + xvmc                : Enables X-Video Motion Compensation support
 + + zoran               : Enables ZR360[56]7/ZR36060 video output

The useflags I've set reflect my particular configuration. For this computer, mplayer is built with support for sse and sse2.
 
For most Linux users. To find out what your your CPU is and can do.
Type this or copy paste this in a terminal:

Code:
cat /proc/cpuinfo
It should spit out something like this:

Code:
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 15
model name    : Intel(R) Pentium(R) Dual  CPU  E2200  @ 2.20GHz
stepping    : 13
cpu MHz        : 3299.974
cache size    : 1024 KB
physical id    : 0
siblings    : 2
core id        : 0
cpu cores    : 2
apicid        : 0
initial apicid    : 0
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 10
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl est tm2 ssse3 cx16 xtpr lahf_lm
bogomips    : 6599.94
clflush size    : 64
power management:

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 15
model name    : Intel(R) Pentium(R) Dual  CPU  E2200  @ 2.20GHz
stepping    : 13
cpu MHz        : 3299.974
cache size    : 1024 KB
physical id    : 0
siblings    : 2
core id        : 1
cpu cores    : 2
apicid        : 1
initial apicid    : 1
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 10
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl est tm2 ssse3 cx16 xtpr lahf_lm
bogomips    : 6599.88
clflush size    : 64
power management:
Oh, I am back in Linux action. I was going crazy.. I had to try out the 27.7 kernel... It was bugging me. :rolleyes:
 
Last edited:
i upgraded to 8.10 beta (from 8.04, kubuntu) last week on my laptop. The only problem i had was that I had to drop to the nv driver to get in to xorg, then I could reinstall the linux-restricted-modules (because i needed networkmanager for wireless).

all that was needed:
Code:
$ sudo nano -w /etc/X11/xorg.conf
(change driver to "nv")

$ sudo /etc/init.d/gdm restart

(open terminal app)
$ sudo apt-get install linux-restricted-modules

$ sudo nano -w /etc/X11/xorg.conf
(change driver back to "nvidia")

(then log out or hit ctrl-alt-backspace to restart xorg)
 
8.10 shows a lot of promise. I think this one is going to be a nice version.

I haven't seen the tray bug on this machine. Other than that.I am glad i tried it out.
 
Back