Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » [Linux] Alright dang it, you win.

This thread is locked; no one can reply to it. rss feed Print
 1   2 
[Linux] Alright dang it, you win.
Chris Katko
Member #1,881
January 2002
avatar

I'm considering dual-booting a flavor Linux because I know without even having to ask that programming direct access to a serial/LPT port would be very easy and it would also support WiFi/long file names/etc.

What flavors of Linux are worth looking into and why? Do they really have significant differences? I want NTFS5 but last time I checked that was read only.

Do you prefer GNOME or KDE? (I'd like lightweight.)

What file system?

Are all executables in a single directory on UNIX systems? How does UNIX-style differ from DOS/Windows? What about system and software configuration? Is it unified (a INI/system/ directory?) or spread into subfolders?

Wow! Things sure have changed since I last looked into distros! Especially with much more elegant, light-weight window managers.

"Materialistic things can't bring you happiness. Except Marshmellows--which are pretty much the same thing."
--
How am I posting? Comments, questions, or suggestions? Drop me a line!

Evert
Member #794
November 2000
avatar

What flavors of Linux are worth looking into and why? Do they really have significant differences?

At the end of the day and on some level, Linux is Linux.
There are differences in default configuration, installer and package manager. Many people like a flavour of Ubuntu, I've never used it myself. In the past I used SuSE. You may want to try a couple of liveCDs and see which one gives you something you like.

Quote:

I want NTFS5 but last time I checked that was read only.

I think NTFS has been read/write for a while now, but I'm not sure if that's all versions. Again, never used it.

Quote:

Do you prefer GNOME or KDE? (I'd like lightweight.)

I vastly prefer KDE, but if you want lightweight you probably want neither of those two.

Quote:

What file system?

I'm on ext4 at the moment.

Quote:

Are all executables in a single directory on UNIX systems?

Sortof. There are a number of standard directories for executables and where they go depends on what "group" an executable belongs to. Many UNIX programs (especially traditional programs) are small programs that do a single task. Large software packages (for instance, firefox) keep all their files together (typically in a directory under /opt or /usr/local) and symlink the executable in a default location.

Quote:

How does UNIX-style differ from DOS/Windows?

Typical UNIX style is small programs that do one thing, and one thing only, but do it (extremely) well. Windows-style is more having one program that sortof does everything. That's a bit of a caricature, but you get the idea.

Quote:

What about system and software configuration? Is it unified (a INI/system/ directory?) or spread into subfolders?

Configuration files go into /etc. Either programs have a configuration file (typically named something like programnamerc) or place their configuration data in a subdirectory. I think the latter is a more modern trend.
Per-user data is stored in the home directory, typically either in a file .programnamerc or in a directory .programname (note the dots).

Matthew Leverton
Supreme Loser
January 1999
avatar

I use XUbuntu (Xfce). I absolutely hate where GNOME is going, and I've never liked KDE (too big).

For file systems, I use ext4, because I cannot be bothered to do any research into other ones.

Generally you have:

/usr/bin <- system binaries
/etc <- system config

where "system" means installed via the package manager. Then for things installed via source, everything is usually prefixed with /usr/local. User settings are generally in a folder called /home/user/.appname.

I have no problem reading/writing NTFS on XUbuntu, although I prefer to mount it read-only just in case.

Package management and CLI under Linux makes me hate Windows, even though it has some superior apps. I never boot into Windows except to test things out or make binaries. :'(

Thomas Fjellstrom
Member #476
June 2000
avatar

If you want something really lightweight but still an "environment", give Razor-Qt a go. I put it on my old laptop, and it seems to work great so far. It's pretty simple, not a lot of features, but it runs with fairly little memory, and its far less broken than LXDE.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro SVN Snapshots] - [Allegro TODO] - [Web Hosting]
"God Bless Joe Pesci" -- George Carlin
"Goto is the buldozer of coding. Sometimes, the buldozer is just the right tool for the job. Not often, but sometimes." -- LordBob

verthex
Member #11,340
September 2009
avatar

If you hate updating your entire OS every six months avoid Fedora as if your life depended on it.

weapon_S
Member #7,859
October 2006
avatar

Debian stable with Xfce here. Lightweight enough for me. I had also tried a window manager without desktop manager (IceWM); too lightweight for me.
I'm using ext3, because I think there were some minor issues with ext4[1]
The exact location where configuration is stored is one of the most prominent differences of Linux distro's (AFAIK). The documentation of most programs states where, and in which order it searches for configuration files. I wouldn't worry about it, though.

References

  1. Can't remember the specifics. Something in the lines of: harder to share files with Windows systems.

Yes well, legibility and correct punctuation might not be "street"... but that's how I roll, motherfucker.
However subtle, varied and subversive pop has become, it still is in essence the "Proletkult" of capitalism. -R. van der Veen

furinkan
Member #10,271
October 2008
avatar

Favorite config is Ubuntu 10.04 LTS, with a Win 7 partition. I only ever boot into Windows if I want to play games or compile for Windoze. :P

I'm using the command line more every day, and its making it hard to go back to a system where the terminal is an afterthought. Even the 'Power Shell' just can't compare to an xterm window.

I've never had any issues writing to NTFS. That's how I transfer files to windoze: copy it to the user folder. The new Ubuntu may mount the partition automatically, which may be useful for you. (I keep it unmounted because it improves performance.)

I've always been fine with GNOME; KDE is kinda windozee :-/ If I wanted that, I'd just boot into my Redmond partition. GNOME is fine, and the Faenza icon set I use adds a certain level of polish to it. My desktop actually looked better than Win 7 in my opinion (and it was a bajillion times as snappy).

gnolam
Member #2,030
March 2002
avatar

I use XUbuntu (Xfce). I absolutely hate where GNOME is going

No shit. When I came across this blog post, I thought it was satire at first.

"Ha ha, that really nails the GNOME team's "we know better than you what you want" attitude.
... wait, it's for real!?"

--
Move to the Democratic People's Republic of Vivendi Universal (formerly known as Sweden) - officially democracy- and privacy-free since 2008-06-18!

Thomas Fjellstrom
Member #476
June 2000
avatar

furinkan said:

KDE is kinda windozee

I don't really know why people say that. I can't be made to operate somewhat like windows, but it can also be made to operate like OSX, and its own beast entirely. Its just really flexible.

append: Oh man, the followup blog that one blog links to is great. The guy claims they have to draw the line somewhere. What I don't understand is why they draw it there with core power settings, and not with say wallpaper. Wallpaper is FAR less important than power settings. Why leave any settings in that window at all, except maybe multi monitor config, and resolution settings. Everything else can go! Gotta draw the line somewhere!

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro SVN Snapshots] - [Allegro TODO] - [Web Hosting]
"God Bless Joe Pesci" -- George Carlin
"Goto is the buldozer of coding. Sometimes, the buldozer is just the right tool for the job. Not often, but sometimes." -- LordBob

Matthew Leverton
Supreme Loser
January 1999
avatar

Quote:

When I came across this blog post [blogs.gnome.org], I thought it was satire at first.

That's precisely the type of nonsense I expect from GNOME developers. :P

furinkan
Member #10,271
October 2008
avatar

Oooooohhhkayyyy. KDE is kinda windozee... out of the box. I'll admit that I have never tried to customize KDE, so I can't say that it is always like that.

Moreover, I ALWAYS massively rearrange GNOME after a fresh install. I loathe GNOME's default settings, they are craptacular. I remove the "Apps, Places, System" and add a bunch of launchers instead.

Thomas Fjellstrom
Member #476
June 2000
avatar

furinkan said:

Oooooohhhkayyyy. KDE is kinda windozee... out of the box.

I suppose KDE 3 was fairly Windows 9x out of the box, and KDE 4 is quite a bit Windows 7 out of the box, BUT KDE 4 had its design before Microsoft even released screen shots of Windows 7. If anything Windows 7 is kinda KDE out of the box.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro SVN Snapshots] - [Allegro TODO] - [Web Hosting]
"God Bless Joe Pesci" -- George Carlin
"Goto is the buldozer of coding. Sometimes, the buldozer is just the right tool for the job. Not often, but sometimes." -- LordBob

furinkan
Member #10,271
October 2008
avatar

Twice corrected... I'll try one more time...

KDE and Windows have a similar appearance. I wasn't attempting to imply that KDE ripped off windows, just that they feel the same to me.

I do feel like the Unity interface is trying to rip off OSX and Win7, which is one more reason why I use Ubuntu 10.04/10.10. I'm probably gonna switch distros when I do my annual OS Scrub and Refresh &copy;

Trezker
Member #1,739
December 2001
avatar

Last I heard Mint was the most popular distro.
Ubuntu did a lot right, showed what Linux needs to become more desktop friendly, but then they got a lot of weird ideas and started forcefeeding us with them.

Arch is KISS, but it's not as easy to get a ready to use desktop system. Chakra was supposed to fix this but I think they might be having some weird ideas and they never finish anything.

OpenSUSE seemed to me a very competent distro when I tried it over a year ago.

While you're messing around you could also check out Haiku which is not Linux, it's an opensource BeOS. Very lightweight, quite different. I like it a lot but it wasn't finished enough for me to use seriously.

Chris Katko
Member #1,881
January 2002
avatar

Great feedback so far. A supplemental question: How difficult is it to begin developing for a Unix-variant? I'm aware of the GNU toolchain, but how different is it? Can I write a "console" app, compile it, and run it (with necessary privileges) as I would a DOS/Windows app in a "folder" or do I run into filesystem structure differences?

Can someone point me to an approved tutorial for getting started? My primary goal is C/C++ and direct hardware access (serial, LPT, gameport) from a console-style application. Possibly with Allegro for additional support (graphical and timing routines).

Running the console application from a windowed environment is allowed and preferred.

"Materialistic things can't bring you happiness. Except Marshmellows--which are pretty much the same thing."
--
How am I posting? Comments, questions, or suggestions? Drop me a line!

Thomas Fjellstrom
Member #476
June 2000
avatar

You can run a program from any place you feel like. note however that '.' aka 'cwd' is NOT in $PATH. so generally you want to run a program in the current dir like so: ./myprogram arguments here

Hardware access generally needs root privileges, but you can often tell 'udev' to give a device node a non root owner (user, group or both), to allow your user to access the hardware without being run as root.

Serial access is pretty easy, all (most) devices on linux are represented as files. you can open up the device's file, and start messing about with things right away. Though some hardware (like serial ports) tend to need some setup or configuration. It looks like you use the 'termios' API to play with a serial port's settings.

Hope this helped.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro SVN Snapshots] - [Allegro TODO] - [Web Hosting]
"God Bless Joe Pesci" -- George Carlin
"Goto is the buldozer of coding. Sometimes, the buldozer is just the right tool for the job. Not often, but sometimes." -- LordBob

Neil Walker
Member #210
April 2000
avatar

Trezker said:

Last I heard Mint was the most popular distro.

The 'start' button menu just annoyed me to death in Mint and in the newest version 12 it looks the same from screenshots. You click the button try to move the mouse to where you want, but due to the way the columns are ordered something pops up instead of what you want.

Neil.
AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Tobias Dammers
Member #2,604
August 2002
avatar

This one should give you a decent introduction to the Unix culture:

http://www.faqs.org/docs/artu/index.html

Specifically: All applications in Unix are, technically speaking, console applications - they all have access to stdin, stdout, and stderr, and most use at least stderr, and they can all be launched from a (virtual) terminal. In fact, most programs don't even care if they're started from an interactive shell in a terminal, a window manager, a handy-dandy launcher application, a script, a daemon, a cron job, or whatever: they'll happily do their thing, read input from stdin and pump output to stdout and stderr. GUI applications do exactly the same, except that they also use the X11 API to create and control X11 windows.

Also, C was invented on and for Unix, and its popularity made other OSes adopt at least some of Unix's features and conventions; personally, I found that many things in C (and libc) suddenly make a lot more sense when you encounter and use them on Unix.

Privileges are much simpler than on Windows, actually. They are not inherited, and owners and groups do not nest. Every file has one owner and one group, and you can adjust permissions for each of 'owner', 'group', and 'world'. And if you're root, you can do anything.

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

Thomas Fjellstrom
Member #476
June 2000
avatar

They are not inherited, and owners and groups do not nest. Every file has one owner and one group, and you can adjust permissions for each of 'owner', 'group', and 'world'.

Two slightly nitpicky things:

1. Users can have multiple groups, so its almost the same thing.
2. with xattrs files can have more than one owner iirc.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro SVN Snapshots] - [Allegro TODO] - [Web Hosting]
"God Bless Joe Pesci" -- George Carlin
"Goto is the buldozer of coding. Sometimes, the buldozer is just the right tool for the job. Not often, but sometimes." -- LordBob

Emanresu
Member #12,510
January 2011

Pinguy and Linux Mint are Ubuntu based and much better than Ubuntu with Unity. Unity is more for tablets and if you're going to use a desktop, I recommend you don't go with it.

Programming is practically the same if you use a cross-platform IDE like Code::Blocks. I recommend it over VS and VC++ myself if you're going to do cross-platform work.

"* Entoutcas has quit IRC (Quit: And the Lord said unto John; Come forth and receive eternal life. But John came fifth and won a toaster...)"
"I was in a casino, minding my own business, and this guy came up to me and said, 'You're gonna have to move. You're blocking a fire exit.' As though if there was a fire, I wasn't gonna run. If you're flammable and have legs, you are never blocking a fire exit... ...Unless you're a table."
-Mitch Hedberg (R.I.P.)
"Quit: (+[WG]sPiKie) (Math problems? Call 1-800-[(10x)(13i)^2]-[sin(xy)/2.362x].)"

Neil Walker
Member #210
April 2000
avatar

While we're on the subject of unix for newbs, is there a simple gui way to mount a NAS volume?

e.g. http://www.markinthedark.nl/news/ubuntu-linux-unix/85-howto-mount-synology-nas-ds211j-to-ubuntu.html

Seems daft that the NAS is unix based and configuring it for Windows is as simple as 'map drive' in file explorer and entering the dns name and share, e.g. \\mynas\music and you're done. But on linux/unix you have to install packages, add odd looking entries to fstab files, mount them, link them, etc.

Neil.
AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Thomas Fjellstrom
Member #476
June 2000
avatar

Seems daft that the NAS is unix based and configuring it for Windows is as simple as 'map drive' in file explorer and entering the dns name and share, e.g. \\mynas\music and you're done. But on linux/unix you have to install packages, add odd looking entries to fstab files, mount them, link them, etc.

If you want it permanently mounted on boot, before anyone logs in, yeah you'll need to install the nfs-client or samba packages and edit fstab.

Otherwise, some filemanagers support accessing SMB/CIFS shares directly. But without it being mounted properly, most apps won't be able to access it.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro SVN Snapshots] - [Allegro TODO] - [Web Hosting]
"God Bless Joe Pesci" -- George Carlin
"Goto is the buldozer of coding. Sometimes, the buldozer is just the right tool for the job. Not often, but sometimes." -- LordBob

Trezker
Member #1,739
December 2001
avatar

Mint started Ubuntu based, but they seem to be moving away from it basing the distro directly on Debian instead.

bamccaig
Member #7,536
July 2006
avatar

The kernel is named Linux. The entire system is composed of many components, many of them developed by the GNU project for the GNU operating system, so it's arguably more correct to refer to a distro as a GNU+Linux operating system. Richard Stallman, founder of the FSF and the GNU project, among other things, would say that a "Linux" distro is really the GNU operating system running on a Linux kernel. I've decided to adopt this terminology as well.

Most of my GNU+Linux desktop experience is with Fedora. It's a pretty solid system, but it's relatively bleeding edge, so occasionally things will break or regress (I actually haven't really seen this in a couple of years though). I've never been able to successfully upgrade from one release of any distro to a newer release so I don't think it's really exceptional that [to the best of my knowledge] it doesn't work well in Fedora either [still]. As a rule, you should have backups for important data, and might as well just wipe the system clean every time a new release comes out (though you can go longer than that if you're not concerned about the latest bleeding edge software). I am the current maintainer of the Allegro 5 packages in Fedora and have done a little bit of work on the Allegro 4 packages as well. 8-)

Debian is another excellent choice, especially if you're more concerned with stability than bleeding edge. Being subscribed to the debian-security mailing list can be quite eye opening because they announce every known vulnerability in software and inform you when to upgrade packages. It can be surprising to see that some other distros aren't updating those same packages as quickly or at all in response. Ubuntu is based on Debian, but I hate what they've done with it... A complete n00b might like it, but I think it teaches bad practices and holds your hand too much. It might be good for your grandmother, but somebody that wants to do development shouldn't need the hand holding.

Arch and Gentoo offer a bit more freedom in terms of what the system is composed of and force you to become more knowledgeable faster [to succeed], but with that comes a steeper learning curve and bigger time investment. I'd probably recommend you don't bother with this until you're already comfortable in a *nix environment. You'll have enough to learn if it's as new to you as you imply. I think both also have smaller communities and that affects the age, availability, and stability of packages.

LFS (Linux From Scratch) is the ultimate 1337 experience, but it's the steepest learning curve of all. I have not achieved an LFS system yet, but it's been on my list for a while and I'd say I'm slowly building up to it.

Insert: As for desktop environments, GNOME 2 is the one that I am most familiar with, and it was pretty awesome. Unfortunately, most GNOME-based distros have moved over to GNOME 3, which I think is unanimously hated by everyone. I've never gotten used to KDE, and in general it feels bloated and clunky to me. I have been unsuccessful thus far moving to alternative desktop environments, but I think given my tastes I'll probably personally prefer a keyboard-centric, tiled window manager. I doubt this same thing would suit your immediate needs.

A few general things to keep in mind:

  • "Everything is [ideally] a file";

  • "Keep it simple, Stupid";

  • "Do one thing and do it well";

Prefer text over binary files, unless there's a technical reason not to. Embrace the command line because it's a lot more powerful and a lot faster. It's also the only UI available for a lot of things. If you're afraid of text then you shouldn't even bother because you'll likely be whining within minutes of installation. Some may consider that a bug, but I consider it a feature.

You aren't going to learn all of this stuff over night. I've been at it for approximately 6 years and there's still a lot to learn. I love it though. The only thing that I use Windows for anymore is gaming (and j0rb), and that's only because I have to. I don't use OS X at all, but I've never tried it either so that's neither here nor there. I prefer a command line interface for everything non-graphical (i.e., gaming, graphic art, video), so I doubt OS X has anything to offer me that GNU+Linux doesn't already.

Evert
Member #794
November 2000
avatar

bamccaig said:

I don't use OS X at all, but I've never tried it either so that's neither here nor there. I prefer a command line interface for everything non-graphical (i.e., gaming, graphic art, video), so I doubt OS X has anything to offer me that GNU+Linux doesn't already.

It certainly used to be a lot better on laptops, and it has more support from commercial software.
Other than that, OS X to me is a just another (slightly quirky, but that could be because I'm not so used to BSD) UNIX system.

 1   2 


Go to: