LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - General (https://www.linuxquestions.org/questions/linux-general-1/)
-   -   Programming Linux (https://www.linuxquestions.org/questions/linux-general-1/programming-linux-866821/)

nine9nine 03-06-2011 03:51 PM

Programming Linux
 
Hi. I have been wondering what language Linux is programmed in. I know that the kernel is programmed in C. Is the kernel where things such as layout of menu is located, or visual things such as that, or is that programmed in a different language or located somewhere else?

sycamorex 03-06-2011 03:59 PM

As you rightly said, the kernel is in C. The looks of your desktop are mostly dependent on your Desktop Environment / Window Manager. For example: KDE, Gnome, XFCE, Fluxbox, Openbox, etc.
Changing the things that you mentioned doesn't usually require much programming skills. Very often you can modify a window manager's config files or there's a GUI application to set those. Those things vary depending on a DE/WM. You'd have to be more specific to get an answer.

Telengard 03-06-2011 04:58 PM

Each desktop environment is programmed in whatever languages the developers like. It is my understanding that KDE is mostly programmed in C++ with QT, and Gnome is mostly programmed in C and C# with Mono.

I happily invite corrections and expansions.

hogar.strashni 03-06-2011 05:33 PM

I'd like to add something that maybe you two haven't made clear enough. Desktop environments are NOT part of the kernel. If you are interested in the way GUI is functioning, you might think of it as consisted of layers. Kernel -> X server -> Desktop environments.

My humble opinion is that the most lovely thing about Linux is that common things of various projects used to be condensed into one package, thus making the job for programmers much easier. GUI is probably the best example. There are various Desktop environments, which all use single X server to connect them to kernel. If the code haven't been opened it would never be possible. I know most of you know this, but I couldn't hold myself from writing it :):redface:

nine9nine 03-16-2011 06:43 PM

What I was mainly wondering is the Gnome desktop in Linux Mint 10. I'm going to be learning some programing, and was wondering if what the desktop was programmed in, so as a challenge, I could try modifying it. Also, is this possible to do from Linux, without reinstalling it? What I mean by this is can I go into Linux, change what I want, without reinstalling Linux on the same computer, or a different one. Please don't post replies saying that I need a lot of programming knowledge (which I lack). I just want to know if I can do what I asked.

Telengard 03-16-2011 11:35 PM

Quote:

Originally Posted by nine9nine (Post 4293139)
What I was mainly wondering is the Gnome desktop in Linux Mint 10. I'm going to be learning some programing, and was wondering if what the desktop was programmed in, so as a challenge, I could try modifying it. Also, is this possible to do from Linux, without reinstalling it?

I'm not aware of anything that would stop you. The source code is all out there as far as I know. Linux is extremely modular so it is entirely possible to have multiple versions of the same libraries. I'm sure the DE devs do.

nine9nine 03-18-2011 02:55 PM

Yes, but would I be able to do this without reinstalling Linux?

hogar.strashni 03-18-2011 06:52 PM

well you can change and recompile just gnome desktop environment. You don't have to reinstall entire operating system, if that's what you asked...

Slackyman 03-18-2011 07:18 PM

In your specific case you are surely talking about some GUI elements like Menu or other graphical items which are mostly developed in Python.
You can find the source code of most of LinuxMint here: https://github.com/linuxmint/
You can edit and recompile the sources, replacing the original single applications, without reinstalling anything.


All times are GMT -5. The time now is 10:51 AM.