What OS to hack around in? - Desktop Customization & Workflow

Users browsing this thread: 1 Guest(s)

I am a current owner of a 13in retina MacBook pro.

I am a web developer, and quite familiar with Python as well, and I wished to expand my knowledge with Linux/Unix, and learn more about Python, and more general purpose languages such as C++ and more low level coding. I figure a great and fun way is to hack around in Linux/Unix, so I'm wondering on any recommendations?

I wanted to dual boot it, because I may actually find a better work flow on my Laptop, then in OSX.
Is it even possible to hack around in OSX? I've seen some impressive desktops on unixporn, but it seams te majority are just running a WM on top of Aqua, instead of replacing it. (Which I believe would be the equivalent of running, hypothetically, two wm's at the same time? Could be wrong)
What Linux/Unix OS would be best? Debian I've heard a lot about, staying away from Ubuntu or mint or any other bloated OS, simplicity ISNT fun. Or perhaps Gentoo/fedora/arch? Or one of the main BSD distros? I've taken a liking to these in particular, but maybe point me in a direction of another OS, or emphasize one in which you favour.

Also, to learn more basic programming like Lua, I wanted to hack with the WM as well(awesomeWM is in Lua, Qtile in Python, etc) is this decent experience for someone that already has an understanding of development, and a quick way to pick up a language or two or six?

I wish to just mess around in spare time, break the system a few dozen times and just see what I can do.

Thanks for taking a time to read,
- Oz

A thought I've been pondering, was to actually make a PC build, and I've looked into one, but I only find knowledge for what seams to be a build for gamers, and as I do not game I do not require the fancy stuff; yet I wanted to build a pc for *nix, just not sure where to start. But maybe some knowledge on that would be handy as well! Thanks again!
I'm not an OSX users so don't take all my words for credits.
Yes, it is possible to dualboot.
You might like to dig old threads in the OSX section: http://nixers.net/forumdisplay.php?fid=14
There's also the saveosx project http://saveosx.org/.
Grey Hair Nixers
if your goal is to learn new programming languages and libraries, i would suggest Arch, as it has a lot of packages already available for installation. You will save a lot of time, because it is easier to install libraries and header files on it than on debian or fedora (because pkg-lib, pkg-dev, pkg-devlib, pkg-extra, pkg-hell, ...)
Due to its nature, arch will also be a good starting point to understand how your OS works, because you will have to perform some maintenance by hand, while havong a lot of support available thanks to the community.

Now if you want to learn how linux works in-depth, you could try a more "rawish" system like fedora, crux or gentoo. they require more attention and knowledge to be run, but allow for more customizations too, and leave more room to alternatives softwares to try on (changing init system, service managers, and such).
Quote:Now if you want to learn how linux works in-depth, you could try a more "rawish" system like fedora, crux or gentoo.
I always thought than Fedora was an easy-to-use, out-of-the-box distribution.

I think ArchLinux is very good, because you will learn a lot (you have to do the maintenance/installation yourself), but everything is very well documented (the beginner guide is great for... the beginners :P ) and the forum is very active. It is also bleeding-edge, which means you'll have the new versions of the softwares really fast, but it is not always stable and sometimes it break.
If can also try Gentoo, which is a distribution made by and for experienced power-users. I didn't try it yet so I can't judge it, but I know that it is really customizable due to it's package management system. But it is more complicated.
There is also Slackware, which is a strange distribution because it doesn't have any dependencies management system, and you have to compile all your
applications "by hand". But it is really stable, and if you don't like systemD it is one of the last distributions which hasn't switched to systemD.
My favorite is Arch, but there are a lot of alternatives, and the best way to know which one to choose is to test :)
Grey Hair Nixers
ah yeah.. wanted to write slackware, not fedora.
Long time nixers
If this post is still relevant :-

Debian or Slackware for Linux
FreeBSD or OpenBSD for unix/BSD

Recommended because there are a lot of dedicated people using them with lots of knowledge to share, available online.

Most, if not all, programming languages are available for use in the above O/Ses.
Long time nixers
my work computer is a 2013 macbook air, and i dual boot arch linux and osx. i'm not a mac guy by any means, so *nix on the air was a must for me. the only reason i dual boot is every once in a while i need the ios simulator to test a native app for one of our older clients.

arch runs very well on the mac, the only hickup was the wifi drivers (i had to install via usb ethernet). this guide spells everything out pretty well. i hightly suggest using the dkms wifi drivers from the AUR. just make sure you setup the dkms daemon to auto build on update or your wifi will not work when you get a new kernel.
Arch is such a nice developer platform, nearly every common language is in the official repositories and the package management is really nice compared to apt and yum. Also the AUR is much simpler than PPA madness or corporate crap like COPR.
Long time nixers
Package management is really just what you have got used to, today they all work reliably.
(For me it is apt on Debian based Linux, & pkg on OpenBSD.)
Grey Hair Nixers
For having to deal with at least 5 different package managers daily (pacman, yum, apk, prt-utils, apt from time to time), I must say that even if you can get used to all of these, some are just easier to deal with when you need to do some programming.
Pacman is a good one. It's fast, sync with repos on demand and install both libs and headers for each libraries. Yum is a slow bitch, avoid it at all costs. Seriously. apt* are ok. My only griefs against it is that PPAs are not as easy as it could be (for example with yum, you can install the biggest repos via yum itself, which is probably the only nice thing about yum). Apk is nice too, and it has this neat --simulate feature, which will tell you what each upgrade will do. But if you plan to do some programming, it could quickly cluter your package base as every package is split in 3: <pkg>, <pkg>-dev (for headers) and <pkg>-doc (for manpages). So you might have to install 3 packages instead of one each time. Finally, prt-utils. It's pretty nice when you need obscure libs or when you have specific needs, because it lets you build your packages by hand in a quick & easy way. The drawbacks being that the package base is way smaller than its concurrents and compiles everything from source. So you migh loose simplicity in favor to flexibility.

TL;DR: you can get used to each, but they all win on a specific field:
  • pacman - fast
  • yum - uuh.. can't think of any advantage right now
  • apt - rock solid / big package base
  • apk - light
  • prt-utils - flexible
Long time nixers
(28-04-2015, 04:55 AM)bsdkeith Wrote: Package management is really just what you have got used to, today they all work reliably.
(For me it is apt on Debian based Linux, & pkg on OpenBSD.)

Exactly. Just be thankful that you can get software safely through it and don't think to much about how it works or what feature one has that another one does not have.
The world is quaking from our Linux Thoughts!