skysight-inc/HackerNews huggingface dataset:
Sorry, a little dense today, what do you do that lets you have 8 hours of social media time that doesn't have much to learn / study about?
The title is fud. The developer mentions "systemd-run --scope --user tmux" will work just as well. tmux could add this in its default to make it run automatically.

This is due to a larger discussion that most users don't expect lingering process after logout. https://github.com/systemd/systemd/issues/3382
In these situations, screen/tmux must include changes that enforce this behavior. Today the operating system itself does not reap processes ... but systemd is not doing anything wrong. By adding this change, tmux/screen users will still get the behavior they expect and the rest of the world get a better behaving operating system.
Minimal branching Factor and then fewest lines of code finally modularity
He was right and wrong. He was right that 100,000 British men couldn't use lead with obviously-bad situation to control India. He was wrong given small numbers of men used a careful combo of military, money, and media to control U.S., Britain, and India. Currently, India mainly serves as cheap labor to support money-making operations in U.S., Britain, and other countries.

Gandhi was ultimately wrong: original exploitation was simply using tactics without psychological acceptance today's tactics have.
It's the invasiveness or the approach. To use the (wrong) car analogy, the blinker manufacturer shouldn't demand a specific engine oil being used. Amalgamation of components, in the software world, carries long term risk and problems.
Interesting idea but I wonder why this technique is stated new since it looks very easy and comprehensive to me just by reading some sentences. Is this really new or is this just a bloated message containing something that isn't that hot?

Another side note: the article contains very much sentences (more than 2/3) not directly explaining the new technique. The read was not that great for me, and I guess this counts for most of the readers since it should be well known that random numbers are a hard thing. Don't get me wrong. Explaining things is great but the title doesn't match the most of the content.
When the process is as baked in as systemd wants to be, you have literally no choice but to rely on it behaving nicely. And unfortunately it mirrors the attitude of its developers/sponsors.
The right tool for your scenario is mosh.

https://mosh.mit.edu/
Because a project should never have platform specific code.

justin@t420:/tmp$ git clone https://github.com/tmux/tmux.git
justin@t420:/tmp$ cd tmux
justin@t420:/tmp/tmux$ wc -l osdep*
95 osdep-aix.c
88 osdep-cygwin.c
80 osdep-darwin.c
133 osdep-dragonfly.c
202 osdep-freebsd.c
41 osdep-hpux.c
98 osdep-linux.c
137 osdep-netbsd.c
157 osdep-openbsd.c
101 osdep-sunos.c
41 osdep-unknown.c
1173 total

Apparently people have been trying to get tmux fixed for FIVE YEARS NOW

http://tmux-users.narkive.com/LXp72CHV/pam-support-in-tmux
There was a previous discussion here not long ago (11 days ago, 159 comments, 385 points):
https://news.ycombinator.com/item?id=11719543
This is an argument about tmux (and anciliarily screen) which are built to allow the exact opposite. If you need to run a task that will take a day to run you could NOHUP and background it before logging out for the day, or you launch screen and have it run continuously in the "background" interactively.

I wonder if this breaks mosh as well, if it's anything with per-user persistence.
Ferris Makes Emulators Ep.010 – Debugger Part I [video]
ElysianVMU – A New VMU Emulator From Elysian Shadows
Oh, and here is your "advanced notice"

http://tmux-users.narkive.com/LXp72CHV/pam-support-in-tmux
http://www.businessinsider.com/richest-people-in-the-world-2...
I'm not sure I understand, but it seems that systemd is correctly killing processes when the session ends. and that shell managers like screen and tmux had hacks to make them survive sessions ends in the past (remember when you had to use nohup screen?). they seem to simply have asked for tmux to add their flavor of nohup to the start up check too.
I am giving you the important data point. 2010. Lady Barbara Judge in Astana. 2015 UK is building 5 new nuclear power stations, and public is generally unaware of the fact.
This is exactly what I've been doing. I'm trying to make it an every day ritual, time permitting of course.

My main approach for this is to create a long term goal for a relatively small unit of untracked work. For example I've identified that our common folder for our front end code is not broken up into logical units. So every day I try to hop in there and simply reorg the folder structure. While I reorg I'm exposed to the files, what they do and whether or not they are actually being used as well as how they're being used.

This is enough to learn about what other people are doing/have done and helps me to identify other refactor goals as well as architectural goals.

Another idea that I've found if you're on a longer release cycle is a post release mental hook. Once the team has deployed the latest bits, I try to hop into main and rip out or refactor code that may be more sensitive. This gives your more risky changes a much longer time to get eyes on them before the next deploy.
So France and the Benelux countries are the only countries that everybody agrees comprise "Western Europe".
It's not "platform specific code", it's breaking historical behaviour.

Killing user processes after logout (when they have been set to not do so, through nohup usually) is not sensible.

Edit: clarification
The problem here, though, is that they're requesting programs which used to be able to persist via call foo() to call bar() instead if they want to persist on logout, only on Linux.

As someone in the linked issue remarked, this will end with everyone calling bar() if they want to persist (the same way they already called foo()), and we'll still have the same level of persistent process issues, but with a systemd dependency.
I'm not really linux-savvy, but if it's true and it does what I think it does, it's really stupid. A lot of my scripts rely on nohup to send something to background, and I often logout after running the script, so this would break my whole workflow.
It's fascinating to see the Github emoji responses.
A surprising and troubling comment in the github comments: "Honestly, I don't see why processes should be able to decide that they should run forever."

I actually let slip an f-bomb reading that. It shows a terrible understanding of longstanding unix philosophy, (and also straw-mans the argument).

Happily, it doesn't seem that was from a systemd developer as far as I can tell from their website. Still, it's a reminder that the userbase (and developer base) that engage with Unix/Linux/GNU is varied, and may not have grown up with the same sensibilities that people my age have about where the right line between user, system and sysadmin should lie.
>Mortgage paymenets are almost entirely interest in the early years. So in many cases there's little difference.

People generally don't buy houses in order to rent them. Usually houses are rented out when the owner is moving and decides to rent it out rather than sell, at which point the owner has a substantial amount of capital in the house.
I think it's pushback against what a lot of people see as systemd overreach/arrogance.

"Hey, can you implement and maintain new platform-specific code to work around this problem we're going to introduce by breaking behaviour of programs using a 21-year-old API?"

It feels especially egregious because, as commenters pointed out, implementing the PAM API is a better (and undoubtedly more portable) way to do this that the developers of systemd didn't seem to consider. Instead, they jumped straight to "implement a custom fix just for us so our breaking change doesn't break your app too".
> but systemd is not doing anything wrong

It's breaking historical behaviour

However making tmux try to use systemd-run is a much better solution than making it depend on libsystemd
https://en.wikipedia.org/wiki/GNU_Screen#History
I'm currently on a unity project but I'm sure at some point I'll work with UE4. I very much look forward to seeing how it performs.
You know, in 20 years Wikipedia will tell it was only the US who fought Germany in WW2 and someone on HN equivalent will point to that article as a proof of his knowledge. History is not without the sense of irony.
As a newcomer, FreeBSD's new pkg tool is what sold me to the platform. I am too new school to to deal with Ports. I don't get much of a rush out of compiling my own binaries.
China has greater ratios of inequality than the US. See World Bank figures: http://wdi.worldbank.org/table/2.9
LAVA: Large-Scale Automated Vulnerability Addition [pdf]
Well, do you know the init-wars? That's the result of polarizing people. A lot of them won't do you a favour, just because they read your name. Even when it may be a reasonable choice, from a technical perspective.

Seeing such an emotional reaction so long after the war makes me wonder if systemd can survive in the long run, though.

Seems to be an issue of "The north remembers."
Process persistence is not an issue, it's a feature.

"Desktop" users with their silly "issues" should go somewhere else and leave Unix alone.
It is literally a problem of not having good enough alternatives. Fossil fuels have an energy density of 30-40MJ/kg. Also they provide power on demand. Ignoring climate effects, they are pretty close to ideal. Lithium ion batteries have less than 10% the density. Teslas only work by making up for the horrible inefficiency of passenger cars, and by devoting significantly more of the car's mass to energy storage. So far I haven't heard much at all about battery powered freight transportation.
I'll give it one more shot. You are a child at the store and you ask your mommy for a lollipop, she hands you one and pays the cashier... who bought the lollipop?
I'm not sure. I haven't even got a clue how Go works, so I've got lots to learn. I'll check out the tour, thanks for suggesting it.
Right but I was unaware FF exposed a "chrome" Uri scheme.

I'm sure they have their reasons for letting pages make Xhr calls to add-ons like that but seems complicated.
Hometown Fanatics: Stacey Dooley Investigates
Well, all I can offer is... tonight is baking night. I will weigh the ingredients, equipment, the risen dough, and the final product.
Hasta Yatakları Ve Hasta Karyolası (Satış, Fiyatları, Kiralama)
I definitely intend to give your plugin s shot. My fear is that C++ is to hairy fora hobby project. But my fingers are crossed!
Occam's razor. Getting off fossil fuels is expensive. Alternatives cost more. Many governments have invested heavily into green energy, and face resistance from the public about the best high energy costs - come to Ontario where the highly visible wind generators have become a scapegoat for the fact that we went from having the cheapest power in Canada/USA to the most expensive (they're a small part of the reason, but they make a good scapegoat). The government recently floated the idea of moving new houses to electrical heating and was pilloried for it.

The public wants to go green, but only if nobody has to be inconvenienced with it.
By using the unix tools that have existed since forever and a day. Detatching from the user's session. If a program is broken and doesn't die when it's supposed to, fix the program, not every other program that behaves correctly with functionality that's been around for decades.
Correction: it's working on "perceived" issues with Linux, e.g. plaintext logs being too large or sequential boot processing being too slow.

I personally don't think that systemd and subverting unix philosophy is worth the trade of faster reboot times on my servers. It solves a "problem" that I don't have with a middleware solution that I don't want.
Fingerprints also have this issue. You only get ten of them that should last your entire life.

With cooperation, we can build 'revocable biometrics' that mix faces and fingerprints with a password or PIN. To revoke your biometric, simply forget your PIN.

The only thing you can do with these models is verify your claimed identity. They can't be used for search. So they're great for users, but not so great for evil establishments that want to search for terrorists or whatever in large biometrics databases.
To reiterate something I just wrote in another post:

Whatever you think of it, systemd is doing the "ground-up rewrite" correctly. Normally, you get 90% of the features for 10% of the code in a rewrite, but then the last 10% of the features are the "plugging this thing into the ecosystem of other crufty things" features which bloat the codebase into something exactly as bad as the original.

The only successful way to do a rewrite is to scope your rewrite not to the size of one component, but rather to the size of the whole component ecosystem, such that you get to redefine all the crufty boundaries requiring convoluted code into clean and simple ones. This means you do have to rewrite more things, but each one can stay at that 10%-for-90% size, because none of the bad-API bloat has to come along.

systemd is consuming components of the Linux userland and leaving cleaner boundaries in its wake. The sheer scope of that effort can make the project look bloated—but people forget to compare the codebase with the combined codebases of all the projects it took to have equivalent functionality before.

People also forget to compare the functionality of the entire ecosystem of software—not just the big stuff everyone uses, but the niche stuff—before and after. Linux's original bazaar approach to system software meant that everything worked with whatever components it explicitly planned to work with, and nothing else. Do you know how many codebases contained some random subset of support for logging via STDOUT, logfiles (with or without rotation), syslog, rsyslog? That's what you get with a bazaar approach. systemd's "hub-and-spoke" cathedral approach means that everything just has to work with systemd, and then systemd can ensure that everything works with everything else.
Timed transfers are when the trains are timed to arrive at the station at the same time so no additional waiting is required to do a transfer. This allows transferring passengers to simply walk off one train and onto a different one located across the platform.

They are common on BART where many transfers are timed transfers, but are relatively uncommon on other systems, since timed transfers comes with a large decrease in timetable flexibility which ultimately results in less system responsiveness to loading, since if a busy line has a timed transfer to a less busy line, you have to run trains at the same frequency down both lines. (BART varies the number of cars in response to passenger loading, but has less flexibility to vary the train timing.) It also requires a high on time arrival rate, since the trains need to arrive within about 1-2 minutes most times so neither train has to wait for the other. BART's OTA rate is actually pretty good and most timed transfers have both trains show up within 30-60 seconds of each other.

BART only has five different lines though, which helps make this work, and also increases the need somewhat, since transfers aren't otherwise as common.
I absolutely loathe 'modern' UX design, not only because it seems to get too out of the way most of the time, to the point where I am struggling to find out how to locate the damn interface to begin using it in the first place. I am the go-to tech guy in most friend/family circles as many of you are, and the 'hidden' modern UI interfaces become a compounded problem when I am trying to help people over the phone. Back in the day, when helping my family first use Chrome, I'd say "click the gear icon, in the top right" - and they would find it with near 100% accuracy. Now it doesn't matter what I say... "hamburger icon" (give me a break), "three stacked bars", "triple bars" - the settings menu is no longer iconic, and modern UX has become a verbal wasteland when trying to explain anything over the phone. "Hover over the little down triangle thing to the right, then the menu pops up" ... "swipe near the edge of your screen, not too far to the right though, just tap the very edge and the menu comes up" ... these kind of explanations should not need to exist if the UX was good. At least the old games you could walk your buddy through the selections over the phone.
Harry Frankfurt's On Bullshit is a relatively respected philosophical treatise of rather recent origin. Whether or not it approaches science depends on how one views the origins of scientific method in philosophical treatises of post-aristotealian early modernity: e.g. Locke, Leibnitz, Descartes, Bacon, etc [or whether Aristotle hisself was being scientific].

As with much in philosophy, it often boils down to deciding for onesself rather than appealing to autority. http://www.stoa.org.uk/topics/bullshit/pdf/on-bullshit.pdf
Kiralık Hasta Karyolası Ekonomik
Yes the museum could have handled it better so that the owner wasn't made to look stupid.
It's doing something very wrong. They are using this as a sledgehammer to solve a gnome issue.
I't just a suggestion, if not - tmux users will have issue with systemd services. Not a big deal. I think linux community just loves to overreact everything related to the systemd.
Killing user processes which aren't meant to stay alive after the user logs out is sensible. Killing all user processes unless they update their code to implement a new API just for this one platform, because of a breaking change to a 21-year-old API, is not sensible.

In other words, if this functionality had been added 21 years ago as well, a lot of mess and confusion would have been avoided and we'd all be happier, but since it didn't the systemd guys are trying to implement it retroactively, which is going to break a lot more stuff than tmux/screen/etc.
I used Flask a few years ago to write a rather large api server (20k lines) for a video sharing app. I learned that they give you a lot of control but it can get messy quickly if you're not careful about properly architecting first.

I ended up getting the Flask Cookbook from O'reilly which helped me understand how to structure a Flask App.

I also recommend Flask-SQLAlchemy as it made writing and manipulating MySQL queries really straightforward.
Yes, it's quite sad how unconciliatory the two camps (systemd implementors on one side, the traditionalits on the other side) have become. Both sides' arguments have their merits, but with this unnecessary hate and anger everywhere no one really wants to join the discussion anymore. :-(
Why its not USSR to blame? USSR allied with Nazi Germany and attacked many free nations. Finland, Estonia, Latvia, Lithuania, Poland. Everywhere leaving destruction, death and misery. War war followed with bloody enforcement of communism in occupied nations.
While you're at it a style guide may be in order. Try to convert your team's current patterns into the set of new patterns that you think are better. This would help to give others a sort of rosetta stone while they're making the switch. I always try to add a why after each good vs bad code comparison.

Having a document external of your brain helps others to feel like they have a tangible set of goals instead of some arbitrary set of goals that nevon wants to have happen. I made my team's style guides repos on github so it's super easy to edit since it's straight markdown. Keep the pedantic discussions to a minimum. Sometimes it's just best to choose something because it's a single way of doing it.
Pointing out errors is constructive as it makes us less wrong.
Daemons being killed on user logout isn't a bad behavior, it's the documented and expected result.

It seems that the problem is that some apps need a feature/toggle that would kill them on logout, but the daemon call doesn't allow that - so a reasonable fix is to make such behavior possible (i.e., new api call), and change those apps who need new behavior instead of changing those apps who rely on this behavior staying as implemented, documented and intended originally.
> most users don't expect lingering process after logout

Who should ever care about the opinion of the non-contributing, useless users coming from the irrelevant platforms?
It further links to this post:

https://www.quora.com/What-is-the-technology-stack-behind-Pi...

> They started with Django but moved out of Django and currently use 'home grown framework on top of Flask'.
I've quit a promising career in embedded systems (senior engineer at one of the biggest companies with all perks), rented my flat and travelled across the globe to work in a startup as a junior web dev with python 2 years ago.

Changed my life in all aspects. Today I am in yet another country and enjoying my career so much more.
Also getting things done your way instead of the reasonable way can save a lot of money in the short term, and a huge part of business is exactly that. It's not nice, but you can't survive in business if you don't use leverage to make things easier sometimes.
the libsystemd dependency is the goal systemd is trying to achieve though, in every package.
I would suggest you learn something about Unix before spousing such opinions, because I don't know where to even begin

nohup is not a hack

What systemd is offering has nothing to do with nohup, it's not "a flavour" of nohup it's a completely different thing

Systemd is not correctly killing processes, this was NEVER DONE LIKE THIS, they decided this out of a whim because apparently Gnome can't do the right thing (how surprising)
It is a useful feature, and it was already there prior to this version. It could be turned on before, and looking at it, Arch and Debian are going to ignore upstream here (which is unusual for ARch, showing how dumb they think this is) and keep it off by default.

All that happened in v230 is that a default of off was flipped to on, nothing more.

What people criticize is that a default was change breaking behaviour and biting people who don't expect it. The feature is useful for system administrators who want it of course
It likely already does "the right thing" according to POSIX. tmux starts a server and then immediately connects to it a client. The server portion is what's being erroneously killed. Starting a server is a relatively normal thing, and one of the steps is to create a new session. setsid() is how you do that. Systemd shouldn't kill processes in a separate session.
I'd like to respectfully disagree here. IMHO, killing user processes after logout is totally reasonable and something I would expect to happen on desktop computers. On servers this might be a bit more difficult, but I like the idea of having to explicitly allow user processes to run outside of the session's scope. That keeps my server used by multiple people clean. I'd argue most sysadmins could simply deploy an alias to their servers for specific applications and be done with it.

edit: If you're already using a specific command to tell the application to stay alive (e.g. nohup), you can use the "new" systemd command as well. nohup never related to a "session" scope because that didn't really exist before systemd. A new command _does_ break historical behaviour, but thanks god we do that from time to time. That's how innovation works.
Solar, nuclear, hydrogen (for freight), hydro...

Anyway, we don't need to use 0 fossil fuels to stop climate change.
Trump is clearly on the cutting edge of this phenomenon.
Corporations Don't Want Employees