debian xvesa directfb Xfbdev base install....without X; midrange machine
Hello....I'm looking for a little advice here. In the process of doing so, I may end up opening up a whole new can of worms for the entire linux community and providing some ideas to attack some problems that i think are on the horizon.
I am indeed a linux newbie, but i'm an advanced windows user and part of the goal here is to learn more about linux. I recognize that the question i'm going to ask has an easy answer - "use X". unfortunately, that answer is not good enough for two reasons. first off, the goal is to learn about the way that linux works.....taking the easy route doesn't lead me to that goal. secondly, i really don't want to use X for reasons i will now explain. i am looking to setup a lightweight base installation of debian on a pc in my bedroom and build the machine up from there. the function of this machine is going to be to house mathml, tex and pdf files for a web page that will never be published (the web page features a lot of unconventional mathematical meanderings that i'm afraid to attempt to publish). it's more of a journal or a scratch pad, really. it's in my bedroom so i can work on the pc late at night while lying in bed. i'm typing this from my main pc, which is a modern sound engineering / general purpose box that dual boots windows xp and osx86. now, lightweight has an obvious answer - don't use debian, use dsl or puppy or feather or [....]. yes, i've googled my ass off here and am only posting as a last resort. now, this option would be great if the pc i'm working with was built for windows 95 or earlier, if it was a PI or low end PII celeron or something with 100 or 200 MB of RAM. however, this pc is not an old pile of junk. it was a very fast, top of the line machine when i initially built it many years ago. it's a PII 500 with 640 MB of RAM in it. i built it for sound design in windows 98 and eventually XP; it's done it's job very well and still has the capability to run xp reasonably well. so, the lightweight distributions are a little too lightweight. this thing doesn't have to run dillo, it can handle iceweasel just fine. it doesn't have to conserve every last MB of RAM...it has plenty for what it's built for. therefore, i've made the choice to go with a base debian install because of debian's easy package management and incredible versatility. there's no reason why i need to accept somebody's else's choice about what the best low resource options are; i have the ability to make my own choices and make the choice to lose some resources in order to gain some functionality if it's functionality that i really want. however, i don't want to lose precious resources on functionality that i don't want....there's a balance that needs to be striven for here. this balance makes the mainstream modern distributions completely useless. a full blown debian or ubuntu install would bog this thing down; i'd might as well stick with an archaic windows install as i wouldn't be gaining anything by installing a full blown debian. but, i want to learn about linux. i can't be the first person to come across this concern and i would suspect that it's something that's going to be starting to come up rather persistently. "i just bought a dual-core to run vista.....what do i do with my PIII?". there's zillions of them out there running windows XP. putting dsl on them is a waste; they can handle more than this. but, they can't handle the newer distributions. as far as i can tell, there's nothing in the middle really built for them - and i mean REALLY built for them. a middle ground needs to be developed - a set of distributions that are able to run numerous tabs of a plug-in filled instance of firefox reasonably well but really cut out the entire gui and all of the bells and whistles in the process of doing so.....the tools exist to turn these things into blazingly fast "library terminal" type research machines. in this context.....why waste the resources on X? i don't care about transparent windows. i don't care about backgrounds or fancy icons. i don't care about the gui's ability to communicate through a network. all of these things are just a waste of hard drive space and a waste of RAM. all the gui needs to be able to do is be a graphical user interface. dos users may remember GEM....black and white is a little overboard, but that's more along the lines of what the gui needs to be here.....as minimal as possible. i'm not talking about the window manager, i'm talking about the server.... what the lightweight distros do have going for them here is that they use xvesa instead....but the result is never ideal. ideal would be either debian base + xvesa or directfb + xvesa. ideal would be customization + lightweight gui. i stumbled upon fbui, which is of course now busted. i really think this should be a priority moving ahead in order to get the right OS on the aging PIIIs and PIVs. go ahead and throw the windows jokes at me, i can take it. and, now, i will finally ask some questions. 1) is directfb really functional enough to use as a replacement for X? i believe that the answer is no. but, i'd like to run it by some more knowledgeable people before i give up on it. 2) how do i get xvesa to launch in the absence of X? i believe that i'm missing some kind of symbolic link but i'm completely clueless as to how to go about building it. maybe i should explain what i've done... all i have on the other machine is the following: a) i installed a debian base install b) i did a wget to download the xvesa .deb from here: http://www.pps.jussieu.fr/~jch/software/kdrive/ (xvesa is only in the debian repository as a part of the xorg meta-package and won't install by itself...the link has the last seperate version of xvesa before it was merged back into xorg) c) i installed some fonts that xvesa requested d) i installed xvesa....typically debpkg -i stuff...it installed just fine. but, when i type "startx" or "xvesa" (from root) it just tells me that the command is unrecognized. i've noticed that the x11r6 folder exists, but there's no startx command. afaik, no documentation on this problem exists. so....can anybody explain to me what it is that i need to do to get xvesa to launch when i type in "startx" ? </rant> |
Quote:
I'm going to quote inline to try to discuss some of your points. I'll try to answer your questions at the end... Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Good luck either way! -Chad |
Quote:
so, general familiarity, i guess; how to set a system up and troubleshoot it if i need to. the end goal is to create a stable system that i can use as a scratchpad; i'm just really picky about what i want to use, i want to completely maximize the hardware's potential as much as possible and completely understand that i need to do it from as small a base as possible. linux provides me with the best opportunity to do this, so i should learn more about linux in order to do this. so, i guess the learning more about linux in the process of setting up the pc thing is just for the fun of it, really. you mentioned LFS...which seems kind of silly in my case because i wouldn't be modifying the code. i'd basically just be recompiling a debian base install. or at least that's my impression.... Quote:
these small distros - these dsls, etc - were designed to make the old P1s and whatnot useful again, to keep them out of the landfills. right? well, the same concern is coming up with the PIIs, PIIIs and even PIVs. so, distributions that are targeted for PIIs and PIIIS - in the same way that DSL is targetted for PIs - need to start appearing. i mean, they WILL start appearing. i'm just giving you a heads up and am hoping somebody with the time and interest runs into this and makes a decision to start NOW and not 6 months or a year from now when it's so blatantly obvious that they couldn't ignore it if they wanted to. ideally, i'd love to be able to just pop a cd in, install a decent system and be done with it....currently, that's not an option. i mean, i could install DSL and install tex on top of it. it would certainly be very fast. but i'd just end up uninstalling all of the little apps that come with it and replacing them with more functional apps because i have the luxury that i can. why not just build the system from the ground up? similarly, i could go with ubuntu, uninstall all of the eye candy and replace the resource drains [open office for example, which mostly just has a lot of stuff that nobody ever uses in it] with lighter apps. but, why not just build the system from the ground up? if there are enough people building a system from the ground up in the same way.....that means there's a need for a targeted distribution here. really, that's all i'm saying. Quote:
Quote:
installing on a machine is not the same as being built specifically for a machine. this is supposed to be the advantage of linux; it's not one size fits all, it's an OS built directly for the functionality you wish the machine to have. Quote:
Quote:
Quote:
whether X + fluxbox works or not is besides the point. xvesa + fluxbox would be <i>better</i>. how much better? i can't answer that one yet because i can't get xvesa to launch. the other thing is that xvesa is 500K and X is 100 MB. it's only a 20 GB drive. so, i'd rather the use the 100 MB for something else. i <i>could</i> lose the 99 MB. but, why would i want to? Quote:
Quote:
as i'm advocating fbui's strategy as the proper strategy and fbui dumps the gui in the kernel like windows does, my "windows jokes" reference was along the lines of "sure, you think fbui has the right idea....but you're a windows user, so of course you do.". i appreciate the response and will repost more reasonably in the debian forum. |
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
-Chad |
I actually figured this out on my own....I'm going to document this here because a google search for setting up xvesa in linux leads to hundreds
of people scratching their heads and trying their damnedest to figure itout....and either failing or failing to post the answers. so, by posting, hopefully i'll save some people some headaches. let's say you have a base debian install (i can't speak for other distros, but anything based on debian should be fine) and you've yet to install X. you need to either be root or have sudo installed, but the following commands will get xvesa on your system: 1) sudo aptitude install libfreetype6 2) wget http://www.pps.jussieu.fr/~jch/softw...1107-2_all.deb 3) sudo dpkg -i xvesa_0.20031107-2_all.deb that installed some fonts, then downloaded the package and then instaleld it. if you type 'startx' or 'xvesa' you'll get a 'command not found' error. i found the answer to this by tracking down some information on one of the few *nixes that doesn't use a derivative of Xorg - netbsd. the initial link is here: http://www.netbsd.org/docs/x/#startx_not_found, which explained that the problem is as i thought - bash doesn't know where to look to find xvesa. so, create a symbolic link from somewhere bash does know to look to where the file actually is: 4) sudo ln -s /usr/X11R6/bin/Xvesa /usr/local/bin/startx at this point, typing startx from anywhere at all will lead to : fatal server error: LinuxInit: Server must be suid root that sucks, but at least now it's trying. it seems to be telling me that i have to be root. pft. this here link explains why: http://git.fishsoup.net/cgit/xserver...55fe7f4b9e0c98 it's hard coded :) best guess is that the server needs to do "stuff" that requires root priveledges....whatever that stuff may be. no matter, you can change the permission on the symbolic link to read/write/exec: 5) chmod 4711 /usr/local/bin/startx 6) cd / 7) startx it's up! no window manager, crappy graphics....but it's up and you just saved yourself 100 MB. now, you need a window manager..... CAVEAT: xvesa is not safe to run unless you're in a safe environment. don't take my word for it: http://www.xfree86.org/current/Xvesa.1.html furthermore, there were exploit issues with xvesa in netware, so don't connect with xvesa unless you're behind a firewall/router that blocks all incoming attempts. in other words.....laptop in a coffee shop? mobile phone? don't use xvesa or any of the pocket distros that use it. i'd really recommend NOT using it UNLESS you're just typing away in your bedroom. (chad: i noticed you replied, i haven't read, i will later.) |
Quote:
Quote:
i'll cut out most of the rest of this - after reading into it further, i've come to agree that gentoo is probably what i really want. i'm going to stick with debian for now to build the system i want (the package manager makes that very easy) and document the steps. when i'm done, i'll probably jump to gentoo and do it all over again. i believe that gentoo even has an install cd application that will then let me build a custom disc that will make the process of reinstallation a little easier if not less time consuming. so, you're right. i do want gentoo. but, debian will help me make it easier to decide what i'm going to do with gentoo. now, as far as the disconnect goes here...not everybody wants to compile source code. i don't have a problem with it if it means the system is faster, but the reason that ubuntu and fedora have been so successful is obviously because they're so user friendly. so, when i talk about desktops and getting PIIs and PIVs running systems that are designed for them, i'm talking about basic systems with front-end guis designed for novice users.....enough to run firefox, mp3s and maybe dvds. this is the same kind of crowd that dsl or puppy are geared towards. not providing a gui for these users is obviously not an option. of course, there's no reason you'd have to use them.....i wouldn't want my core 2 with 4 gigs of RAM running an outdated system, either. but, that's just the point.... [/QUOTE] |
i'd just like to follow up on this for those people that are attempting to do what i've done and are running into problems....i posted a solution in order to help, but it turns out it's not very helpful.
while what i've suggested will get the server to launch without a window manager or a terminal (ie it's not a functional system, it's a blank screen with a mouse cursor and no ability to do anything at all), it's not the best way to build a system because by the time you've actually installed a decent window manager you've just rebuilt the xorg package anyways. specifically, i should point out that i've suggested that you build a symbolic link to launch xvesa.....that's actually not a good idea. you want your startx to be a script that does a number of things, not a symbolic link to the server's binary. so, don't actually do what i've said. you could use one of the ancient window managers to get around the problem of rebuilding xorg to get around not using xorg, but i highly suspect that most people will find such an approach displeasing. even the ultra-minimal window managers won't work properly without virtually the entirety of xorg behind them. something else i've noticed is that even with xorg installed, i'm using xvesa anyways because there aren't any specific drivers for the oldish ati card (it's an ancient ati all-in-wonder, which is pretty lame by today's standards but still way more than powerful enough to do just about anything that's useful). so, there appears to be no difference in performance because the end result is the same thing. that doesn't solve the disk space issues and there are indeed a lot of useless drivers packaged with xorg. but, after spending quite some time on this, i really would conclude that the most efficient option is to install xorg, let the scripts set the system up.....and then uninstall all of the extra drivers. peruse your aptitude/installed/x11 list for a list of unused drivers (you end up with everything from ati/nvidia drivers to drivers for cards that virtually nobody has used in 15 years). so....yeah. 1) xorg seems like a massive download when it's the first thing you download, but that's because it's the first thing you're downloading. you need most of what it's downloading for just about everything, not just for xorg. 2) it's more efficient to install xorg, tell xorg to use Xvesa and delete the unused drivers than it is to install a number of X-related packages and build the system up from scratch. 3) whether you use option A or option B leads you to virtually an identical endpoint, so you'd might as well use option A. the answer truly is "install X". |
actually....and this is the final answer, dammit, just forget about xvesa and install these if you want to cut out the bloat of X:
xserver-xorg-video-vesa xterm xfonts-base (plus dependencies) that's all you need for a basic desktop system with a gui to be completely functional. the package managers will stick you with a tiny bit of bloat still, but simply installing those 3 packages will get the server up in 2 minutes and is still 80 MB less than the full blown xorg. |
follow up for really low end machines
Thanks for a great thread - I too have been hunting for Xvesa/kdrive/TinyX for a long time.
*My* target PC is an ancient 486DX, 33 MHz, 16 MB RAM. Your conclusion is no good for this case, as X.org rapidly consumes 50-100 MB of RAM before any real work has been started. I'm basing this on a minimal install of Debian Etch, with a custom kernel (less than 800 KB, no initrd). My post here is just to let you and other readers know that you can easily run the Xvesa server as an integral part of the X.org framework. After installing the .deb you linked to and setting setuid on /usr/X11R6/bin/Xvesa, simply run: startx -- /usr/X11r6/bin/Xvesa Behold, Xvesa consumes less than 4 MB RAM, as opposed to 60-70 MB with regular X. Combining this with your minimal footprint X.org install should give best usage of HD space as well. I need to experiment with this more, but I noticed: - default mode seems to be 16 color - mouse scroll wheel doesn't work I've been attempting building Xvesa myself for a while. Does anyone have any up to date (and preferrably complete) info on this? (I've been battling obtuse instructions found on freedesktop.org (linked to from wikipedia's kdrive page). Sorry, no URL in first post.) |
Slitaz is an independent distro that uses xvesa + Openbox and a custom package manager.
It is pretty complete and fairly user-friendly. I haven't tried it on really low-end hardware but - compared to full-blown Ubuntu + Gnome - it is very fast on a 2.93GHz p4 with 512Mb of RAM. I mention Slitaz because there website includes a 'cookbook', documentation on making Slitaz from scratch. I haven't had time to go thru it, but I would assume it covers installing xvesa. |
in Debian lenny, after installing xvesa by doing "dpkg -i /packagepath.../xvesa_0.20031107-2_all.deb", just install xinit.
sudo apt-get install xinit that's just all. You would like, albeit, modifying your .xserverrc to make Xvesa initiate with the necessary or preferred parameters, and edit your .xinitrc to load the window manager and any other application upon the start o X. Both these hiden files must be on your home directory. Hi, everyone I know this is an old topic in the forum (september 2007) and was replied last time in may 2009. So, the one who created it most probably has already solved the question. Although, reading the topic I didn't found the answer to the question "so....can anybody explain to me what it is that i need to do to get xvesa to launch when i type in "startx" ?" So, i just wanted to post a direct answer, so people who came up here by google, or any other web search engine, can find things easier. I went trough this same situation weeks ago (doing a base installation of debian lenny, and afterwards installing xvesa instead of xorg), and I would like to share my experience with others. I think the answer is very simple, just install the package "xinit". I also am not what I may call an experient linux user. I first used linux in 2005, but I am using it as my main OS just recently. But, since I passe trough this, I thought my words would be of any help... Hope that this answer helps anyone out there |
one man's opinion
Hi, I was just browsing threads and stumbled on this one. I decided to sign up to the forum just to share my thoughts, so this'll be my first post(also the first time I've ever wrote the word "this'll").
My first experience with Linux was about ten years ago when I got my first computer. It was a hand-me-down from my Mom--a 450mhz P II with 768mb RAM and running Windows 98. It was top of the line when she bought it. I did a full install of Suse 8.1 Home, and it ran circles around the old OS. I'm fairly confident you won't see any notable lag in performance with a full install of Xorg on a slackware based distro, or even PC Linux. |
All times are GMT -5. The time now is 01:01 AM. |