13 ms·
FreeBSD: the next 10 years
- tambourine_man 12y agoAudio from the talk: https://archive.org/download/bsdtalk247/bsdtalk247.ogg https://archive.org/download/bsdtalk247/bsdtalk247.ogg
- pmarin 12y agoVideo from the talk: http://youtu.be/Mri66Uz6-8Y http://youtu.be/Mri66Uz6-8Y
- mlvljr 12y ago3D virtual-something from the talk, anyone? ;)
- canadev 12y agoThanks, I went through the slides and then found this. Contrary to some of the other posters I actually found it kind of interesting. It sounds like this guy, at least, is thinking of a lot of the problems and questions me and my coworkers have been facing re: system startup/service config, which is cool. I didn't know who he was before, but I do now: http://en.wikipedia.org/wiki/Jordan_Hubbard http://en.wikipedia.org/wiki/Jordan_Hubbard Co-founder of BSD, BSD Technology Manager/Director of Unix Technology for 12 years. Sounds like he has some relevant experience, I gather he was talking about the iPhone when he was discussing mobile devices, the IPC mechanism, remote debugging, etc.
- digi_owl 12y agoLikely, as Jolla is using systemd on their Sailfish powered phone. Btw, that is likely both the source of the RTC alarm support. And also the source of the infamous bitcoin hitman hire quote. The latter came from the chat log of a community IRC channel related to Maemo/Meego/Mer/Sailfish.
- nkuttler 12y agoI find it irritating to see cheap jabs at Linux/GNU/GPL in most BSD presentation I check out. It doesn't prevent me from using it, but it's just childish. Focus on your strength, not what you perceive as weakness elsewhere.
- teddyh 12y agoYeah, when the Linux phenomenon was new, they used to make just as bad (or even worse) jokes at Windows’ expense. But they don’t anymore. Why is that? Maybe they gained enough acceptance that they don’t feel they have to, anymore. In that case, the fact that FreeBSD still does this is a symptom that FreeBSD does not view itself as having gained common acceptance. EDIT: Toned down possibly inflammatory language
- vezzy-fnord 12y agoHave you ever read some comment sections on Phoronix and /r/linux (or even LWN) when BSD is brought up? The lighthearted licensing jabs we see here are nothing compared to the vitriolic disinformation that is regularly seen when uninformed Linux users try to talk about other operating systems. This is an infamous example: http://lwn.net/Articles/430598/ http://lwn.net/Articles/430598/ [gets particularly heated at mezcalero's top level comment] Linux users make jokes at Windows' expense all the time. It's usually not higher profile developers doing it, but nor have they ever, really.
- Sanddancer 12y agoI think it's worth noting here that mezcalero is Lennart Poettering. His attitude is a seriously bad one if he's supposed to be one developing Free Desktop software.
- ishigoemon 12y agoWhy do you call his attitude seriously bad? I agree with him, portability leads to complexity and therefore isn't worth it when you are trying to move fast. You may disagree that OSS should move fast, of course, but why should you want to slow down others? Free software doesn't need to even support free operating systems, for that matter. I'm sure that there are Windows-only apps that are F/OSS, though I don't know of any off-hand. Of course the systemd developers don't need to support any other OS to write "Free Desktop" software, any more then the FreeBSD developers shouldn't feel compelled to port their filesystems, init-system, or anything else to Linux.
- Spidler 12y ago"Even the linux die-hards have essentially grasped the necessity of systemd (Even though they're going to hate on it for awhile longer)"
- ausjke 12y agothe only reason I'm re-interested in bsd is that it does not have systemd, if BSD wants systemd-alike init I will stop right here... additionally, for the vast majority linux systems that are actually embedded, BSD needs a solution for that.
- gpvos 12y agoOpenBSD does not seem to have any interest in systemd-lookalikes.
- ghshephard 12y agoThe one great thing about OpenBSD, is that it provides a consistent, reliable, cleanly documented, constantly maintained, operating system. There is such an emphasis on consistency, that a solid OpenBSD administrator, who last worked on OpenBSD in 2004, and then, 20 versions later, (OpenBSD releases a new major version, along with a full set of architecture releases and binary packages every six months, like clockwork) - would have zero problem understanding all of the system concepts. A few things have changed/updated/evolved, but a couple hours with the man pages would bring them right up to date. OpenBSD is about very gradual evolution, not revolution. My sense is that OpenBSD is not designed for Watches, Tablets, or SmartPhones. It is a world class Server, Firewall, Router, networking device, networking appliance operating system, and it's unlikely to ever lose that focus. I'm pretty confident that we won't see anything like systemd confusing everyone on OpenBSD as long as Theo continues his steady management at the helm. Systemd actually serves some pretty important functions on systems that have a lot of dynamic services going up and down with dependencies, particularly on low-power devices, and on systems that require rapid parallel process initiation - so I'm not hating on systemd here, just appreciating the consistency that we find in OpenBSD.
- 12y ago
- porker 12y agoLet's hope they take these pointers to heart, discuss and move forward. It'd be great to have an even stronger FreeBSD in 10 years' time.
- justincormack 12y agoI didnt find this talk very visionary (I saw the similar one at EuroBSDcon). Power management needs to be better, add something like systemd thats not like that. Vision in (existing) operating system development in terms of ten year projects is actually quite rare, mostly there are incremental changes. OSX is maybe an example, go for usability, and ZFS is another, make a radically different file system. Windows NT perhaps as well.
- teddyh 12y agoRegarding “A centralized event notification system”, I predict that D-Bus will soon have this position in Linux, certainly when kdbus lands.
- espadrine 12y agoI honestly thought that was already the case. In fact, much of what the speaker wants are things that play catch-up. - An automated dependency-driven and parallel init system → launchd, systemd - An event notification system → notify, DBus - Virtualization: VMWare for Mac, I guess, docker (LXC) for Linux - Battery / ARM: a painful change for MacOS X first, then for Linux (when Android fought to improve it) - Configuration: Mac is stuck with plist/xml (which, at this stage, is both a pro (single system) and a con (awkward system)), Linux is sadly behind. Having a configuration system is hard because many programs that want configuration wish to have a Turing complete one. - GPLv3… well, MacOS X is actually behind on this one.
- teacup50 12y agoD-Bus is an amazingly crap implementation of this idea.
- teddyh 12y agoYour comment is an amazingly crap comment. Provide details and/or links to details. Also, does your “crap” assessment also apply to kdbus?
- gtirloni 12y agoRegarding the centralized configuration data, I don't know how to feel about it. Sure, it would be good but most recent attempts at it usually involve going the Registry way.
- threeseed 12y agoI didn't see anything about centralized configuration. Only standardising on a single format e.g. JSON.
- assente 12y agoIs fun that a lot of Linux systemd haters are going to move toward FreeBSD which is moving to a systemd-like init :D FreeBSD is just like Linux but on late of 5 years Google for "Freebsd vs Linux 2014 performance and features"
- assente 12y agoIs fun that a lot of Linux systemd haters are going to move toward FreeBSD which is moving to a systemd-like init :D FreeBSD is just like Linux but on late of 5 years http://assente.vega9.com/it/freebsd_vs_linux_2014_performance_and_features http://assente.vega9.com/it/freebsd_vs_linux_2014_performanc...
- XERQ 12y agoI find it alarming that releases are EOL after 1 year, whereas RedHat Linux releases are supported for 10 years.
- deleted 12y ago[deleted]
- danieldk 12y agoThat's a point release. Red Hat point releases are also not supported for 10 years (you follow along the point releases on the major version for that length of support). It seems to be pretty much the same on FreeBSD. However, the support for major versions is also shorter. E.g. 8.0 was released in 2009, and 8.x is not supported anymore.
- crest 12y agoFreeBSD 8.4 is supported until 2015-06-30. FreeBSD 8.0 was released on 2009-11-25. Odd numbered minor releases and the last minor releases in a major release are supported for 2 years. Migration two newer minor releases of the same major release preserves binary compatibility. There are ports to preserve binary compatibility with previous major releases. Why would want to run 10 year old binaries if a compatible and improved version exists? Run FreeBSD 8.4 and 10.1 on the same hardware and perform a bunch of benchmarks. Even if none of the new features are relevant to you it offers improved performance.
- danieldk 12y agoFreeBSD 8.4 is supported until 2015-06-30. FreeBSD 8.0 was released on 2009-11-25. Odd numbered minor releases and the last minor releases in a major release are supported for 2 years. Sorry, I misread the release table. Then, that is pretty impressive, 6 years for a major release! Why would want to run 10 year old binaries if a compatible and improved version exists? Personally, I don't but in many enterprises a new stable release is often only introduced after a 1-3 years. Then it is to expensive if support runs out quickly. When I was involved with CentOS (ca. CentOS 4 & 5) era, there were still many companies running 2.1 and 3.
- r-u-serious 12y agoI think what they are trying to say is that FreeBSD should adopt systemd ASAP! (trollface)
- nathell 12y ago"All OS and app configuration data in OS X and iOS are XML plist files, even GNU emacs and X11.org's preferences!" Naming correctness aside (it's X.org), can this be backed somehow? I remember using Emacs on OS X and I very much was storing my configuration in ~/.emacs.d/, the way it should be. The idea to have a unified configuration format for the entire system is glorious in theory, but with a system as heterogeneous as FreeBSD (and Linux even more so), it seems next to impossible in practice.
- danieldk 12y agoI assume he is speaking of the base system. Though I wonder how good an idea it is in practice. E.g. I cannot really imagine configuring, say mutt, via JSON, XML, or whatever. The power of such configuration files is that they are often domain-specific and allowing a custom format makes them compact. Of course, for automation or writing user-friendly interfaces, a unified format is better.
- fdsary 12y agoChoosing a unified format for configurations is an interesting task, because they all suck a lot (hehe). XML is too verbose to be nice to work with. Plain text files with config flags delimited by newlines lead to the program in the end implementing a small scripting language for config files. JSON is pretty nice, but also a bit clunky. A lot of {:} all the time. Personally, I think the nicest and most expressive way is S-expressions. I'm no lisper, but you have to admit sexprs are expressive, easy to read, and can be run as functions if the program knows lisp. { "configFiles": "in JSON", "wouldLook": {"like":"this"} } (while sexpr (could look) (even nicer))
- mlvljr 12y agoWould be even cooler if "Python-ized" (i.e. if spacing mattered): that is they could look like this
- robin_reala 12y agoThat’s basically YAML (that they mentioned as a possibility). http://yaml.org/ http://yaml.org/
- jacquesm 12y agoSignificant whitespace in configuration files... what could possibly go wrong. Didn't we learn something from Makefiles here? Does that 'tab' look like 8 or 4 spaces to you?
- mp3geek 12y agoIn 10 years time will they still be using CVS?
- DCKing 12y agoThe most intriguing part of FreeBSD (any BSD really) from an outsider's perspective I find the fact that "the FreeBSD project" has a bigger, more directed scope than "the Linux project" or "the GNU project". It's a kernel and userland all in one, and they can actually decide to focus more on unity of configuration files and mobility. I get the impression that you cannot decide that as efficiently on Linux at all. People often say "Linux is all about choice" as if it's a good thing [1]. I think this overwhelming focus on choice really is what's so frustrating about Linux and its community. If needs aren't being catered to, or if there are disagreements, the amount of vitriol that gets thrown around is despicable. The systemd controversy is so terribly shameful, but lo and behold: FreeBSD now seems to be envious of it (or at least some of its aspects). Gnome 3 is widely regarded [2] as the best, well-integrated desktop environment Linux has ever had, and look at the amount of vitriol that got for having a direction and making choices for the user. I personally think that the level of integration systemd and Gnome 3 are attempting to pioneer make Linux far more attractive than ever, but the Linux community really alienates me with its attitude towards that. With this attitude, desktop Linux mostly remains a patched together collection of software. The rough edges of this patchwork are still far more apparent on even the best regarded distros when compared to OS X or Windows or even Android. It's a shame FreeBSD doesn't maintain an integrated or official graphical interface. Since it uses the same not-so-well integrated desktops as Linux does, it unfortunately means that using FreeBSD is only a minor improvement over Linux for me in daily use [3]. That means I'll just leave it to Apple to build me a well-working and well-integrated operating system. If an operating system project or vendor makes choices for me, I consider that a big advantage most of the time. If a project can actually take on a proper direction like this presentation suggests, that is a big selling point to me. [1]: I know what the good things about choice are, I'm trying to make a point. [2]: Widely regarded does not mean "universally regarded" or even "regarded as such by the majority". [3]: Ignoring the problem that FreeBSD doesn't have the level of driver or application support that Linux has.
- freehunter 12y agoThat's why Ubuntu became so popular, and Mint after it. There was a cohesive vision that a Linux OS can be more than a collection of text processing utilities. That's also why Ubuntu is so reviled in some Linux circles, because they dared to make a choice for their users, dared to try something new, dared to implement something that wasn't a direct continuation of decades-old software. Once they proved it was possible, others started jumping on board, giving Linux the freshest coat of paint it had ever seen. It was a serious contender for the year of the Linux desktop, especially with the rise of netbooks. But then politics happened. If it doesn't work the same way it did in 1968, it's not allowed in the OS that was the child of the 90's. Pulse Audio, Unity, Gnome 3, systemd (along with anything else Poettering has touched) are evil because they're new. Unix never did it, so Linux can't. GNU's Not Unix (yet... we'll get there someday though!).
- sudioStudio64 12y agoI have to admit that I came to this thread to see if anyone accused Jordan Hubbard of not understanding the "Unix Way" when he mentioned that they need a subsystem like the one that must go unnamed on this and every other forum. Gosh, I remember when you could get FreeBSD on floppies. I've always had a great deal of respect for the work that they do. 10.0 was awesome, but I have to admit that I don't use *NIX everyday anymore.
- peatmoss 12y agoOh my gosh yes. I can't imagine anyone with JKH's particular type of cred in the Unix arena, who could more convincingly sell me on such a service. He cofounded such an iconic traditional *nix environment, and then spent years presiding over the technical direction of the internals for OSX. I like to think JKH has already seen the future at Apple in terms of what worked, and what could have been improved. That JKH is back to working more closely on FreeBSD is exciting.
- josteink 12y agoI must admit I like some of what I see, but I'm not sure the people currently ditching Debian for FreeBSD is. Hopefully FreeBSD's execution will better than Debian's, but given their long standing track record I have little doubt they'll be able to make a future transition a million times smoother. I'm still not sure I agree that all configuration has to be stored/processed in the same format (ref Apple plists). I know this is the way things are done on some embedded platforms like OpenWRT and once you get used to it, it's OK, but it always means a feature needs to be doubly supported: first in the original service and its config-file and then in the translation layer between the config-file translated by the init-script into the "real" deal. And will they be doing this for the 70k+ ports, or just for core services provided by the base OS?
- cwp 12y agoCan someone explain bit about "trying really hard not to suggest launchd?" He's right, it does seem like an obvious fit, but he takes it as obvious FreeBSD wouldn't use it. What am I missing?
- _jsn 12y agoJordan Hubbard only recently left Apple. I suspect he is trying to avoid suggesting only Apple solutions for FreeBSD problems.
- coldtea 12y agoFor those that don't know it (there are some comments here but not very clear): the writer of this presentation, Jordan Hubbard was a head FreeBSD developer for many years, who then become a head developer of OS X at Apple. He left Apple last year, and is back into FreeBSD work.
- andrewflnr 12y agoThis may be a stupid question, but what's wrong with shell scripts as config? Yeah, they're Turing-complete, but they're necessarily trusted, and a lot of times you end up wanting that anyway. But in the simplest case, they're almost the platonic ideal of a config language: name=value, repeat. If your objection is that shell languages have lots of nasty warts, then I'd agree, but you should be fixing that separately anyway. I sort of encountered this idea in FreeBSD init scripts, so I don't see why they don't just run with that.
- lifeisstillgood 12y agoI agree - kind of. You have to have a standard - make.conf for example is just systemd for the 90s.
- thristian 12y agoThe problem with a Turing-complete configuration format is that pretty much the only thing you can do with it is preserve it verbatim, or execute it to see what config it produces. You can't, for example, write a tool to safely update a config file to work with a new version of the software, or to apply some specific update across a bunch of machines, or to catalogue the configurations each machine has.
- andrewflnr 12y agoYeah, but that's more of problem with shell than Turing-completeness in general. You just need to design a language with a usable T-incomplete subset, like maybe name assignments and conditionals. The only problem is that it's tricky to enforce that sort of sunsetting on sh. But I don't see why your migration script couldn't just say, "sorry, your config is too weird to automatically migrate" when it sees a loop or external callout.
- contingencies 12y agoYou can't, for example, write a tool to safely update a config file to work with a new version of the software You never can tell the future. This is a straw man. apply some specific update across a bunch of machines This is a bad idea anyway: the immutable server model seems to have been recognized as the way forward. See https://news.ycombinator.com/item?id=6705269 https://news.ycombinator.com/item?id=6705269 for reasoning. or to catalogue the configurations each machine has Again, immutable servers make this pointless. I think, overall, given your examples you are clearly looking at the wrong tool (ssh or whatever plus systemd; a host-centric combined init system, process manager, log manager, and whatever else) for the job (managing multiple machines in disparate states).
- krick 12y ago> My dream laptop has evolved (BSD instead of Windows) (15th slide) But, wait, isn't it Mac?
- dbbolton 12y agoIt's a stock photo: https://www.google.com/search?tbs=sbi:AMhZZivX9JS-QLEbVyc-hNm9pulGOhgNa0zpQ-eCE-mTFSlgREXdOD6kgOwxp7H8Xy3Ogb8hahkhki6Y7I-cCc0-9zqi03zdOS8RRAmH0bNLWCYCd89-bLWAFvbXOyujsSHUlk_1OqEuPzFQ6dAgPoCfCyrTj2EjsRuVBEGq2wMVUyW_1vWwB2I7IuebBxeU-43I4NHwfgW6Ait_1h6w6Nri0OiFlsvCYy0sb-Q0gRuGGKUElekx1PIDynjEjpwQfnFOu04CvRxfrOqYKxrRkNWVvAylrSDFGWsW_1b4xN7VkON4-E5EY7u4g1pxHuWzZTRZqVG_1MA9Fwn-VbaTma0YMQXSDKdmp7JZw1xxYLsNAwUsN_1HjreyzRI0SaEJQ5LDyqlbuGxi66iGmb7dhsqGpmO-mkH7Hj2nhpdKKqOErV2lHcjZB9HXIEkbaI6MADGqyrl8MXQdWR96BCtVuFUjCc6l29m8_1ELVNh9FbqtbHH5QDKprfT06K68MXYEMW7PLxvVRT7Z9De0H9ARmX9NkNSqYMeyF_18u-8116hZ3zY475gQdhZFBJL_1Fjvz_1cJf0kqjm-CR58zsvdKuxGjHkt3eLG3bQRig_1PPHFgrOW9CWf2WVHHuQmedCuI2AFhbhMJk4w3g77dvrxaLzuYIBnssNZz0mE0SMqAHYeJsY6eXoLIDAuuHhWi9zMLtRG9PeJTS5vkJQoVLXzWPT908X9_1LBSNB_1gWp1Fdb4eeJPAgFx2Qd_15r-XzGIG9MIi6qPtYDUTp8bKY5cnXsaLBSaNtM-tvksY_1wAD2Iy4142MK0p_1OZvGg-v78m-lT0UanutaLRtiqO4zl2ZkWZp1sXou-K39jBQVXlJvou1FjSwiY94F7VJ7_1Qyuh6EMrMdClK0Z7ApDhOsWZwgA6XoWqNGnbviuNdRzTKhAAllJKRpgF3bXFrIEYH08F1hist8LpGCkIyOc8NB3e-_10rdBl2QJ4pnbQGdPFYxwDJBG_1fz_1Dlf76VNXe8mFj61YS1LoVq2HBCkC3EjmWgENm4X-7xPnISWDTVtJjvXF0FfxeGJb2JlwSA6G8eh5olWRTmTOVXEkpRba7dAmu_16HrCVDJckoFKhGIOD9Dxtm0y_1llBYO7pbazh61dzTdLyfo_1GqK5QjUbeKQZOqgJLY6SbFSE4vD2Xa9M2XEnpbEzyc1984mnFvOlovmylyTfb3NfYRbKUef0Wx4EwoqJiTxXfSK9o2oLJu3b2eO0ccDboC7yGwiXOPY68fRowdpAMKRGPMpy_1IT0AfDYh-_1A5d3lNUK1qGTQE7Wy3hjZm3KoxtTd_1e0DxMFjazHK5YYinb1n_17hoUze-os1LUmdiF1vQ5Ge8Kqp8CCf0MtCj9GL7XDkZlNgYvhH747bAvnTq59P78bP_1eMn1ZoCrchajrP55A_1QohUYi0KqhkKcenjr9ESqa5Q&gws_rd=ssl https://www.google.com/search?tbs=sbi:AMhZZivX9JS-QLEbVyc-hN...
- zanny 12y agoIt still ships with OSX, albeit it is less apparent than how buying a Windows computer to run Linux (hic, Lenovo fanboys) how antithetical to your cause buying the machine is.
- wooger 12y agoHe is, throughout the talk, presenting the case that iOS and OS X are really BSDs, and somehow nearly FreeBSD, so somehow relevant. I don't buy it, which means many of his earlier points don't make any sense. e.g. Majority of FreeBSD machines running on battery.