Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Vulture Culture
Jul 14, 2003

I was never enjoying it. I only eat it for the nutrients.

xtal posted:

That's the same concept but I don't want this to use a client library, just standard I/O, and maybe signals if we wanted to get really crazy. The idea is abstracting out the message queue into three interoperable components: one that finds other nodes and opens a bunch of UNIX sockets, one that multiplexes all of those into a single socket, and one that wraps a program's standard I/O to use those interfaces. That way I can start with simple clusters (a bunch of Rake tasks for example) but also replace different components to do more advanced things (run the tasks on EC2, find other nodes with a gossip protocol).
It pretty much sounds like you're talking about Docker ambassadors here, so you might want to just look at that before you reinvent the wheel.

Adbot
ADBOT LOVES YOU

reading
Jul 27, 2013

CaptainSarcastic posted:

This might be hopelessly remedial, but I thought I would mention that there was a Windows update released last week that will fail if you run a dual-boot configuration or use a bootloader other than the Windows one.

It's got a pretty easy workaround, just requiring a manual selection of the Windows drive from the one-time boot menu and thus using the Windows bootloader, but it failed on me several times before I bothered looking up the error and figured I might be able to save someone else the frustration.

So if I have Grub and use that to dual boot between linux and Win7, I just select in Windows it's own bootloader? Doesn't that mess up or overwrite Grub?

CaptainSarcastic
Jul 6, 2013



reading posted:

So if I have Grub and use that to dual boot between linux and Win7, I just select in Windows it's own bootloader? Doesn't that mess up or overwrite Grub?

I have Linux and Windows installed to their own separate drives, so for me it was just a matter of using the one-time boot menu to select the Windows drive instead of the Linux drive where GRUB 2 lives. Totally passive in these circumstances.

If you have both operating systems installed on the same drive then you might have to jump through more hoops than I had to.

xtal
Jan 9, 2011

by Fluffdaddy

evol262 posted:

These kinds of things invariably talk over a message queue, which is also what you wanna use. Even redis or etcd would be ok, but pub/sub message queues.

Could that be a FIFO on the file system? I'm more interested in experimenting to find the most minimal solution rather than something really robust or scalable.

Misogynist posted:

It pretty much sounds like you're talking about Docker ambassadors here, so you might want to just look at that before you reinvent the wheel.

Thanks, that sounds really interesting.

evol262
Nov 30, 2010
#!/usr/bin/perl

xtal posted:

Could that be a FIFO on the file system? I'm more interested in experimenting to find the most minimal solution rather than something really robust or scalable.


Thanks, that sounds really interesting.

Docker ambassadors are basically reverse proxies. It makes dynamically swapping pieces relatively easy, but maybe not quite what you're looking for (you'd still need to subscribe to something).

You may want to look at Mesos, though, which is quite complex, but does a lot of the things you're interested in.

In general, the problem with a FIFO is the "out" part. pub/sub, message queues, swarming protocols, dns service discovery and record publishing, and other patterns don't exist because someone wanted to pad their resume. It's because they solve specific problems. In your case (reading input in one place, sending it out as plaintext to a bunch of other listeners which may or not be local) the ideal way is:

  • Install some message queue (qpid and amqp are both really easy; rabbit is very flexible but sometimes hard to get running because Erlang is very picky about DNS and hostname resolution)
  • Create channels
  • Write a trivial application in almost any language you want (bindings for message queues are very common and easy to use). Read from whatever you want. A file. A fifo. Stdin. A TCP socket. HTTP POST. All of the above
  • Send a message
  • Clients subscribed to the channel get the message and do something with it
  • These clients can be 8 line Python scripts which read from amqp and print it on stdout, attached to stdin of some other process if you really want the whole queue thing external

If you do it any other way, you're going to end up re-implementing this pattern badly, and software already exists to do it.

JHVH-1
Jun 28, 2002
Does anyone know off hand a way to easily remove directories that only have a specific directory inside them?

What I have is some directories pulled from CVS from our build software which doesn't use the -P flag so it leaves empty directories that only have a CVS directory inside them. Since I can't find a way to make it use CVS properly, I can just run something from a shell script to clean it up before building the artifacts.

I could probably do it in a two step manner by removing all the CVS directories and then finding empty ones or something like that, but thought I would ask in case somebody had a good idea for a more of a one liner.

Bhodi
Dec 9, 2007

Oh, it's just a cat.
Pillbug
find . -name CVS -type d -exec readlink -f {}/.. \; | xargs rm -rf

e: added a type -d

Bhodi fucked around with this message at 16:50 on Apr 6, 2015

fletcher
Jun 27, 2003

ken park is my favorite movie

Cybernetic Crumb
Having some trouble with my nginx conf: https://gist.github.com/fletchowns/1b7f08775afb975474f4

Two problems:
1. Requests for mydomain.net/fakefile.js are returning the source code of index.php
2. Requests for mydomain.net/rutorrent/php/whatever.php are returning the source code of the file

I only need to allow php for the index.php file and then anything under /rutorrent/. Do I need separate location blocks for these?

spankmeister
Jun 15, 2008






fletcher posted:

Having some trouble with my nginx conf: https://gist.github.com/fletchowns/1b7f08775afb975474f4

Two problems:
1. Requests for mydomain.net/fakefile.js are returning the source code of index.php
2. Requests for mydomain.net/rutorrent/php/whatever.php are returning the source code of the file

I only need to allow php for the index.php file and then anything under /rutorrent/. Do I need separate location blocks for these?

Does your PHP work otherwise?

Also, your SSL config is out of date, RC4 is hella broken, don't use it use 3DES if you absolutely have to support IE6 or whatever.

fletcher
Jun 27, 2003

ken park is my favorite movie

Cybernetic Crumb

spankmeister posted:

Does your PHP work otherwise?

Also, your SSL config is out of date, RC4 is hella broken, don't use it use 3DES if you absolutely have to support IE6 or whatever.

Yup PHP works fine for mydomain.net/index.php. Thanks for the SSL suggestions, I'll update that portion.

fletcher
Jun 27, 2003

ken park is my favorite movie

Cybernetic Crumb

fletcher posted:

Yup PHP works fine for mydomain.net/index.php. Thanks for the SSL suggestions, I'll update that portion.

Finally got it working, here's my updated config: https://gist.github.com/fletchowns/89535be956b5df5ac8a6#file-gistfile1-nginxconf-L76-L83

The key seemed to be adding a nested php location under /rutorrent and setting the SCRIPT_FILENAME to just $request_filename, so it works with the alias. That and removing the try_files $uri =404 from that nested one.

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo

evol262 posted:

Why is selenium not a different user? Why aren't you running these tests in clean VMs where this stuff (all other flash processes) doesn't matter?

This is a bit late in the conversation, but these questions are offensive.

nescience
Jan 24, 2011

h'okay
Having trouble installing Elementary Freya (based on Ubuntu 14.04) to a Lenovo Y500 laptop. I can boot to LiveCD just fine, but after installation it hangs up on a blank screen. When I tried to access the Grub menu (holding shift on boot) it just gets stuck on "Grub is loading."

From Googling, it seems this might have something to do with the Nvidia graphics cards. I tried Googling this issue, and so far I've tried setting nomodeset in Grub and installing Nvidia graphic drivers after chrooting the Linux installation from LiveCD, to no avail. (Is there a config file somewhere to check if I'm still using nouveau?)

I'm curious if anyone here has some tips that I've not already read on making this work.

Some background on the laptop/install. It's a Lenovo Y500 laptop. i7-3630MQ with the Intel HD core disabled, Nvidia 650M SLI (altho I'm not trying to get the 2nd card working), just one normal HDD. I'm not dual booting, the hard drive has been completely wiped in each install attempt. I set the boot mode to Legacy in BIOS. Not sure if I missed anything else.

I also tried installing Ubuntu 12.04, 14.04, and vanilla Debian, all running into the same problem :(.

nescience fucked around with this message at 21:15 on Apr 7, 2015

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo
Have you tried making sure that it's the graphics card by pulling the Nvidia card and using the Intel HD instead?

evol262
Nov 30, 2010
#!/usr/bin/perl

osirisisdead posted:

This is a bit late in the conversation, but these questions are offensive.

I can only assume that you were reading some other thread, or that you have no idea what "offensive" means. Asking someone why they're creating a problem that they're then trying to solve does not qualify.

nescience posted:

Having trouble installing Elementary Freya (based on Ubuntu 14.04) to a Lenovo Y500 laptop. I can boot to LiveCD just fine, but after installation it hangs up on a blank screen. When I tried to access the Grub menu (holding shift on boot) it just gets stuck on "Grub is loading."

From Googling, it seems this might have something to do with the Nvidia graphics cards. I tried Googling this issue, and so far I've tried setting nomodeset in Grub and installing Nvidia graphic drivers after chrooting the Linux installation from LiveCD, to no avail. (Is there a config file somewhere to check if I'm still using nouveau?)

I'm curious if anyone here has some tips that I've not already read on making this work.

Some background on the laptop/install. It's a Lenovo Y500 laptop. i7-3630MQ with the Intel HD core disabled, Nvidia 650M SLI (altho I'm not trying to get the 2nd card working), just one normal HDD. I'm not dual booting, the hard drive has been completely wiped in each install attempt. I set the boot mode to Legacy in BIOS. Not sure if I missed anything else.

I also tried installing Ubuntu 12.04, 14.04, and vanilla Debian, all running into the same problem :(.

Are you EFI booting or legacy? Is secureboot enabled? Have you tried disabling it?

Can you post your partition table from the livecd?

The Y500 appears to have extremely finicky or buggy UEFI, with multiple results saying that they needed to run boot-repair immediately after installing Ubuntu. I don't know if Ubuntu doesn't properly install a shim bootloader for secureboot or if the EFI support is a little broken or not.

First step: is grub actually loading? nomodeset won't matter if it isn't. Where are you setting nomodeset? Installer or grub prompt?

nescience
Jan 24, 2011

h'okay

osirisisdead posted:

Have you tried making sure that it's the graphics card by pulling the Nvidia card and using the Intel HD instead?

The Y500 has the HD permanently disabled, i.e. not hooked up to the display/vga/HDMI port. Nvidia 650M(s) are the only GPUs visible to the mobo.

evol262 posted:

Are you EFI booting or legacy? Is secureboot enabled? Have you tried disabling it?

Can you post your partition table from the livecd?

The Y500 appears to have extremely finicky or buggy UEFI, with multiple results saying that they needed to run boot-repair immediately after installing Ubuntu. I don't know if Ubuntu doesn't properly install a shim bootloader for secureboot or if the EFI support is a little broken or not.

First step: is grub actually loading? nomodeset won't matter if it isn't. Where are you setting nomodeset? Installer or grub prompt?

*Legacy
*I actually don't see an option for secureboot in my BIOS, which irked me but I'm going to assume that it's not there?
*I just changed my LiveUSB to Fedora to see if I have any luck with a RH based distro (nope), so now I'm remaking the Elementary LiveUSB, but I recall only having a ext4 partition for my Install, an extended partition, and swap. I'll post in a minute when I get the USB made.
*If I'm booting in legacy mode do I have to worry about UEFI?
*I have no idea if grub is actually loading, I see the Lenovo logo, and the screen goes immediately blank (backlight still on), for the nomodeset, I chrooted my installation partition, edited /etc/default/grub, and ran update-grub.

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo
Alright, sorry, that's all I had for that specific model. Good luck. I've butted my head against Lenovo BIOS bullshit a couple times now. At the moment, I'm stalling on getting a buspirate to redo my old x200 with Coreboot because it won't let me swap the HDD for an SSD.

evol262 posted:

I can only assume that you were reading some other thread, or that you have no idea what "offensive" means. Asking someone why they're creating a problem that they're then trying to solve does not qualify.

Funny... yet you're a prolific supporter of both pulseaudio and systemd?

nescience
Jan 24, 2011

h'okay

evol262 posted:

partition table



pre:
Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00025113

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048  1928460287   964229120   83  Linux
/dev/sdb2      1928462334  1953523711    12530689    5  Extended
Partition 2 does not start on physical sector boundary.
/dev/sdb5      1928462336  1953523711    12530688   82  Linux swap / Solaris

evol262
Nov 30, 2010
#!/usr/bin/perl

osirisisdead posted:

Funny... yet you're a prolific supporter of both pulseaudio and systemd?
Please go read the plethora of posts about pulseaudio and systemd in this thread and have this argument with yourself in the corner, since it's patently obvious from that comment that you have no idea what problems pulseaudio or systemd were/are actually solving.

nescience posted:

*Legacy
*I actually don't see an option for secureboot in my BIOS, which irked me but I'm going to assume that it's not there?
*I just changed my LiveUSB to Fedora to see if I have any luck with a RH based distro (nope), so now I'm remaking the Elementary LiveUSB, but I recall only having a ext4 partition for my Install, an extended partition, and swap. I'll post in a minute when I get the USB made.
*If I'm booting in legacy mode do I have to worry about UEFI?
*I have no idea if grub is actually loading, I see the Lenovo logo, and the screen goes immediately blank (backlight still on), for the nomodeset, I chrooted my installation partition, edited /etc/default/grub, and ran update-grub.

You won't see an option for secureboot unless you're EFI booting.

Most of the Lenovo models that I've had to deal with end up leaving UEFI enabled all the time, and enabling "legacy" still sometimes leaves you booting from EFI. Checking the output of "dmesg | grep -i efi" or the contents of /sys/firmware/efi may be a good idea just to make sure you're actually booted legacy.

For nomodeset, I'm guessing grub is not actually loading, and nomodeset never has any effect at all.

nescience posted:

pre:
Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00025113

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048  1928460287   964229120   83  Linux
/dev/sdb2      1928462334  1953523711    12530689    5  Extended
Partition 2 does not start on physical sector boundary.
/dev/sdb5      1928462336  1953523711    12530688   82  Linux swap / Solaris

These partitions aren't aligned, and it's an MBR partition table, not GPT.

Destroy these partitions, create them from scratch with gparted or parted if you need to. gpt partition table. parted will handle alignment (anaconda also does this correctly, so it shouldn't be necessary on fedora). Pick your (existing) partitions in the installer.

What's on sda?

nescience
Jan 24, 2011

h'okay

evol262 posted:

Please go read the plethora of posts about pulseaudio and systemd in this thread and have this argument with yourself in the corner, since it's patently obvious from that comment that you have no idea what problems pulseaudio or systemd were/are actually solving.


You won't see an option for secureboot unless you're EFI booting.

Most of the Lenovo models that I've had to deal with end up leaving UEFI enabled all the time, and enabling "legacy" still sometimes leaves you booting from EFI. Checking the output of "dmesg | grep -i efi" or the contents of /sys/firmware/efi may be a good idea just to make sure you're actually booted legacy.

For nomodeset, I'm guessing grub is not actually loading, and nomodeset never has any effect at all.


These partitions aren't aligned, and it's an MBR partition table, not GPT.

Destroy these partitions, create them from scratch with gparted or parted if you need to. gpt partition table. parted will handle alignment (anaconda also does this correctly, so it shouldn't be necessary on fedora). Pick your (existing) partitions in the installer.

What's on sda?

Sda is the LiveUSB drive. I'll try the above and will get back to this~

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo

evol262 posted:

Please go read the plethora of posts about pulseaudio and systemd in this thread and have this argument with yourself in the corner, since it's patently obvious from that comment that you have no idea what problems pulseaudio or systemd were/are actually solving.


You're an rear end in a top hat, sir.

Maybe I don't run into those kinds problems because I'm not looking for them. The fact that you don't see the similarity between them and the problems the other poster, whom you were implicating as an idiot, had means that we don't have common ground to even have a conversation. Kindly go gently caress yourself.

edit: VVV Thanks! Apparently it's a Neighcron (Flayed) Neighed One

Cyberpunkey Monkey fucked around with this message at 22:15 on Apr 7, 2015

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

osirisisdead posted:

You're an rear end in a top hat, sir.

I like your My Little Pony avatar! :shobon:

evol262
Nov 30, 2010
#!/usr/bin/perl

nescience posted:

Sda is the LiveUSB drive. I'll try the above and will get back to this~

sda is the liveusb? That's really strange device ordering.

It's possible that grub goes really stupid with this. The "Loading GRUB..." string is hardcoded in stage1 (the part that actually goes in the MBR, if you're using an MBR loader, and EFI puts the entire thing there, so it's likely that you're actually legacy in this case). It basically says "print 'Loading GRUB...' to the screen, then jump to this sector/block (depending) and load the rest of stage2 (or probably core.img, since you're probably using grub2).

Seeing that message and nothing else means it can't find it. You may want to try re-installing grub. Or installing/booting in EFI mode, assuming it's not as broken as it sounds like on the Y500.

osirisisdead posted:

Maybe I don't run into those kinds problems because I'm not looking for them. The fact that you don't see the similarity between them and the problems the other poster whom you were implicating as an idiot means that we don't have common ground to even have a conversation. Kindly go gently caress yourself.
I'll just take this to mean "I've never written software for production systems, touched an init script, or had to deal with the mess of poo poo that is supervisord, xinetd, service ordering in sysvinit, or any other problem systemd deals with". But you can have that conversation in the corner, too.

nescience
Jan 24, 2011

h'okay

evol262 posted:

sda is the liveusb? That's really strange device ordering.

It's possible that grub goes really stupid with this. The "Loading GRUB..." string is hardcoded in stage1 (the part that actually goes in the MBR, if you're using an MBR loader, and EFI puts the entire thing there, so it's likely that you're actually legacy in this case). It basically says "print 'Loading GRUB...' to the screen, then jump to this sector/block (depending) and load the rest of stage2 (or probably core.img, since you're probably using grub2).

Seeing that message and nothing else means it can't find it. You may want to try re-installing grub. Or installing/booting in EFI mode, assuming it's not as broken as it sounds like on the Y500.

pre:
# dmesg | grep -i efi
[    0.000000] ACPI: UEFI 000000009f7fc000 000236 (v01 LENOVO CB-01    00000001 ACPI 00040000)
So does this mean I'm still in UEFI?

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo

evol262 posted:

I'll just take this to mean "I've never written software for production systems, touched an init script, or had to deal with the mess of poo poo that is supervisord, xinetd, service ordering in sysvinit, or any other problem systemd deals with". But you can have that conversation in the corner, too.

No. I haven't done most of that considering I've been happily running Slackware for the past few years or playing with other parts of the system. I have broken a fair number of sysvinit scripts by doing stupid poo poo while mucking around with my toy computer lab, but fail to see how it's terribly difficult to order execution in bash scripts considering that they are in a sequentially executed scripting language. Unless your distribution of choice breaks that basic idea in some way that I am ignorant? I've mostly avoided the "serious business" side of the Linux universe apart from a short stint as a full stack LAMP developer because it seems to be generally populated by pompous, my-way-or-the-highway jerks, such as yourself, who mistake their arbitrary preferences of how things should be as "the best technical solution." I'd like you to explain how pulseaudio had anything to do with "software for production systems." That'll be a fun screed to read through, I'm sure.

I like how systemd has parallelized startup to make some things faster, but the rest of it seems like insane to me, a humble hobbyist. I think the point of most of it is that developers don't want things done in bash because you're most comfortable working in C, yet another language battle in the eternal language wars.

All of pulseaudio seems insane to me, considering I have tested for the main "problem" that your kind always claims that it "solves," the audio from two sources thing, and found it to be illusory as far as I can tell.

evol262
Nov 30, 2010
#!/usr/bin/perl

nescience posted:

pre:
# dmesg | grep -i efi
[    0.000000] ACPI: UEFI 000000009f7fc000 000236 (v01 LENOVO CB-01    00000001 ACPI 00040000)
So does this mean I'm still in UEFI?

Sometimes. It's unfortunately vendor dependent. You should check /sys/firmware/efi to be sure.

E: to clarify, it's an evolving area. There used to be an efivars kernel module, but it's built in almost everywhere these days.

You normally see a message like:
pre:
[    0.000000] EFI v2.xx by Vendor
But it's not a reliable indicator on modern kernels, and what they put in the ACPI table is a total crapshoot. That may be there so they can expose something, probably to share a vendor Windows key between legacy (by looking at the ACPI table) and UEFI (by looking at EFI directly), but there's no way to tell just from this message.

osirisisdead posted:

No. I haven't done most of that considering I've been happily running Slackware for the past few years or playing with other parts of the system. I have broken a fair number of sysvinit scripts by doing stupid poo poo while mucking around with my toy computer lab, but fail to see how it's terribly difficult to order execution in bash scripts considering that they are in a sequentially executed scripting language. Unless your distribution of choice breaks that basic idea in some way that I am ignorant? I've mostly avoided the "serious business" side of the Linux universe apart from a short stint as a full stack LAMP developer because it seems to be generally populated by pompous, my-way-or-the-highway jerks, such as yourself, who mistake their arbitrary preferences of how things should be as "the best technical solution." I'd like you to explain how pulseaudio had anything to do with "software for production systems." That'll be a fun screed to read through, I'm sure.

I like how systemd has parallelized startup to make some things faster, but the rest of it seems like insane to me, a humble hobbyist. I think the point of most of it is that developers don't want things done in bash because you're most comfortable working in C, yet another language battle in the eternal language wars.

All of pulseaudio seems insane to me, considering I have tested for the main "problem" that your kind always claims that it "solves," the audio from two sources thing, and found it to be illusory as far as I can tell.

Look. You've clearly read the thread, or at least enough of it to know that I support systemd and pulseaudio.

There was literally a post a week ago about all the things that were wrong with plain ALSA, how you can break/block audio on a system in 2015 by using plain ALSA in WINE, etc. Also, ALSA doesn't do a drat thing with network audio, or software mixing from applications, or anything else. JACK solves some of these problems, but JACK and Pulse aren't orthogonal. As noted in this (very recent) discussion, all the same arguments against Pulse came out against ALSA when it replaced OSS.

The problem with using scripts is multipart. All of which you can learn about by reading this thread. Or anything about systemd, really. Socket activation, complex dependencies, scripts from vendors which specify that they should be S92 or whatever (explicitly), causing a whole bunch of other scripts to stack up as S99whatever at the end, incredible amounts of boilerplate for simple services, needing watchdog daemons to restart applications which crash, restarting other daemons which also require given ports/cgroups/sockets without duplicating a bunch of logic all over, etc. Every distribution using sysvinit breaks this basic idea, except maybe for Gentoo, because openrc isn't as dumb as sysvinit.

Before you get into some "humble hobbyist" perspective about how you have no idea what "the best technical solution" entails, I will tell you from a different perspective (one of someone who administered thousands of servers and currently works as a developer for a Linux vendor on non-"humble hobbyist" problems) that you shouldn't even care about this because it's transparent to you until you decide to make it an issue for no reason whatsoever. Instead of complaining about how the people who actually develop the operating system you use have decided (in multiple distros and a big roundtable/discussion from the Debian people) that systemd is actually the "best technical solution" and that upstart and sysvinit both have significant faults which cannot be remedied and make them ripe for replacement in a modern operating system, you should maybe listen to them. If you don't think it's "the best technical solution", try presenting a technical counter-argument about how sysvinit is not a mess which needs to be replaced by a modern init system, and how to make sysvinit handle modern development/usage paradigms.

I'll wait.

Technical issues are decided by technical arguments. Your feelings don't matter. Present a technical argument.

evol262 fucked around with this message at 22:55 on Apr 7, 2015

nescience
Jan 24, 2011

h'okay

evol262 posted:

Sometimes. It's unfortunately vendor dependent. You should check /sys/firmware/efi to be sure.

E: to clarify, it's an evolving area. There used to be an efivars kernel module, but it's built in almost everywhere these days.

You normally see a message like:
pre:
[    0.000000] EFI v2.xx by Vendor
But it's not a reliable indicator on modern kernels, and what they put in the ACPI table is a total crapshoot. That may be there so they can expose something, probably to share a vendor Windows key between legacy (by looking at the ACPI table) and UEFI (by looking at EFI directly), but there's no way to tell just from this message.

I didn't see efi in /sys/firmware, only ACPI and some other stuff.

jre
Sep 2, 2011

To the cloud ?



osirisisdead posted:

:words:
but fail to see how it's terribly difficult to order execution in bash scripts considering that they are in a sequentially executed scripting language.
:words:
All of pulseaudio seems insane to me, considering I have tested for the main "problem" that your kind always claims that it "solves," the audio from two sources thing, and found it to be illusory as far as I can tell.

Maybe since you are by your own admission a hobbyist you should stop trying to argue with some who's a developer at redhat ?

evol262
Nov 30, 2010
#!/usr/bin/perl

nescience posted:

I didn't see efi in /sys/firmware, only ACPI and some other stuff.

Almost guaranteed to be a GRUB stage2/core.img problem. Are you using grub2 or grub-legacy?

What happens if you re-install grub?

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo

jre posted:

Maybe since you are by your own admission a hobbyist you should stop trying to argue with some who's a developer at redhat ?

Maybe you should stop trying to silence any debate with appeal to authority fallacies?

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo

evol262 posted:

Look. You've clearly read the thread, or at least enough of it to know that I support systemd and pulseaudio.

There was literally a post a week ago about all the things that were wrong with plain ALSA, how you can break/block audio on a system in 2015 by using plain ALSA in WINE, etc. Also, ALSA doesn't do a drat thing with network audio, or software mixing from applications, or anything else. JACK solves some of these problems, but JACK and Pulse aren't orthogonal. As noted in this (very recent) discussion, all the same arguments against Pulse came out against ALSA when it replaced OSS.

The problem with using scripts is multipart. All of which you can learn about by reading this thread. Or anything about systemd, really. Socket activation, complex dependencies, scripts from vendors which specify that they should be S92 or whatever (explicitly), causing a whole bunch of other scripts to stack up as S99whatever at the end, incredible amounts of boilerplate for simple services, needing watchdog daemons to restart applications which crash, restarting other daemons which also require given ports/cgroups/sockets without duplicating a bunch of logic all over, etc. Every distribution using sysvinit breaks this basic idea, except maybe for Gentoo, because openrc isn't as dumb as sysvinit.

Before you get into some "humble hobbyist" perspective about how you have no idea what "the best technical solution" entails, I will tell you from a different perspective (one of someone who administered thousands of servers and currently works as a developer for a Linux vendor on non-"humble hobbyist" problems) that you shouldn't even care about this because it's transparent to you until you decide to make it an issue for no reason whatsoever. Instead of complaining about how the people who actually develop the operating system you use have decided (in multiple distros and a big roundtable/discussion from the Debian people) that systemd is actually the "best technical solution" and that upstart and sysvinit both have significant faults which cannot be remedied and make them ripe for replacement in a modern operating system, you should maybe listen to them. If you don't think it's "the best technical solution", try presenting a technical counter-argument about how sysvinit is not a mess which needs to be replaced by a modern init system, and how to make sysvinit handle modern development/usage paradigms.

I'll wait.

Technical issues are decided by technical arguments. Your feelings don't matter. Present a technical argument.

I don't think sysvinit is sacred. It should be replaced. I am fine with almost everything that systemd does, but am trying to understand both sides of the obviously massive argument. I'm not what you are assuming that I am. I like systemd so far. I do think pulseaudio is a stupid idea and everything I've read about it makes it seem stupider.

Special snowflake layers for network audio is a stupid idea, anyway.

Basically, it seems like you've had vendors bolt on stupid arbitrary poo poo, and instead of telling them to gently caress off with their stupid arbitrary poo poo like, our script must be S92 or whatever (explicitly), you're nuking everything because why?

I don't care about whatever political bullshit got railroaded through some committee of people I've never met. I don't care about your credentials or associates. I want to understand what the gently caress you're on about. I'm also reading the systemd source with what limited time and give-a-gently caress I have available.

I'm interested because this is the first time I've heard most of that particular verbage about what systemd does even though I've read ALL of Lennart's blogs about it and a bunch of posts about it on other forums over the past six months. It's a hobby to me because you couldn't pay me enough to sit in an office with a bunch of you 8-5 M-F, sorry.

edit: I jumped the post gun on that one, sorry.

Cyberpunkey Monkey fucked around with this message at 23:26 on Apr 7, 2015

evol262
Nov 30, 2010
#!/usr/bin/perl

osirisisdead posted:

Special snowflake layers for network audio is a stupid idea, anyway.

It's an audio server for the entire system, making it de jure not a "special snowflake". It means network audio goes through the same software stack as every other bit of audio on the system, which is kind of the point.

osirisisdead posted:

Maybe you should stop trying to silence any debate with appeal to authority fallacies?

I'm not appealing to authority. Try making a technical argument before you think you're having a debate.

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo
Every problem I've ever run into with computers has been a human problem at it's root. It has been a problem where some human decided, YOU MUST USE THING IN MY WAY! And I wanted to use THING in my way instead and had to risk breaking poo poo, which I have ruined a few computers trying to get things working the way I wanted, or put in a hyperbolic ten years of reverse engineering to understand how THING worked on a transistor level and break US Federal laws to write my own drivers. Of course, the Hardware documentation is hidden in some company's servers, or dumpsters, somewhere.

Don't feed me that, technical argument, line. I'm sick of your poo poo. It's on YOU to prove to ME that I should use YOUR code, not my responsibility to prove to you why I shouldn't. So far, you all have failed to convince me and your attitude has turned me off of wanting to rely on you to provide me with software in the future.

quote:

networked sound server

Why don't you just share a filesystem and play audio on a daemon on your other computer if you need sound to come out of speakers somewhere else? Why do you think it's a good idea to do it through some arbitrary "sound server"? That's what I don't get. There was a simple solution already available, but somehow we all needed a huge glue layer on top of ALSA?

Cyberpunkey Monkey fucked around with this message at 23:25 on Apr 7, 2015

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
How else do you coordinate multiple streams from multiple clients without some sort of daemon doing the mixing?

jre
Sep 2, 2011

To the cloud ?



osirisisdead posted:

Maybe you should stop trying to silence any debate with appeal to authority fallacies?

You realise this is SHSC and not D&D ?

There isn't a debate, you have two extremely technically knowledgeable people explaining this, and you howling at the moon.

evol262
Nov 30, 2010
#!/usr/bin/perl

osirisisdead posted:

I don't think sysvinit is sacred. It should be replaced. I am fine with almost everything that systemd does, but am trying to understand both sides of the obviously massive argument. I'm not what you are assuming that I am.
There are a zillion posts explaining what systemd is, does, and is solving. Or you can read the logs from the Debian debate. Or the previous pages in this thread. Or read this. There are a lot of resources for understanding the questions at issue which don't mandate going over it yet again unless you have specific questions which don't involve "force feed me reasons why sysvinit should be replaced."

osirisisdead posted:

Basically, it seems like you've had vendors bolt on stupid arbitrary poo poo, and instead of telling them to gently caress off with their stupid arbitrary poo poo like, our script must be S92 or whatever (explicitly), you're nuking everything because why?
If by "vendors", you mean "project developers" and people trying to resolve races from the idiotic way sysvinit orders services.

grep chkconfig /etc/rc.d/init.d/*

For example libvirt is S97. It isn't vendors.

osirisisdead posted:

I don't care about whatever political bullshit got railroaded through some committee of people I've never met. I don't care about your credentials or associates. I want to understand what the gently caress you're on about. I'm also reading the systemd source with what limited time and give-a-gently caress I have available.
I'm not appealing to any credentials. And it was the Debian Technical Committee where they had an elaborate debate about the merits and detriments of every init system Debian ships and what should be used going forward and why.

"I'm reading the source for this" doesn't help you understand what problems it's trying to solve.

osirisisdead posted:

I'm interested because this is the first time I've heard most of that particular verbage about what systemd does even though I've read ALL of Lennart's blogs about it and a bunch of posts about it on other forums over the past six months. It's a hobby to me because you couldn't pay me enough to sit in an office with a bunch of you 8-5 M-F, sorry.

We mostly work remote and geographically distributed. The number of people "in an office 8-5 M-F" is small.

But to understand what systemd does and what sysvinit doesn't, read the Debian link above. Or the old posts here. There's honestly no reason to rehash it unless you have specific questions.

fatherdog
Feb 16, 2005

osirisisdead posted:

This is a bit late in the conversation, but these questions are offensive.

How about we back up and you explain exactly why you think these questions are offensive instead of continuing yet another systemd derail.

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo

Suspicious Dish posted:

How else do you coordinate multiple streams from multiple clients without some sort of daemon doing the mixing?



Honestly, I don't know why it works, but I've played sound from mplayer and an HTML5 video from Firefox at the same time and it works. I also regularly run Steam games and watch stuff in mplayer at the same time and never had any issues even though I don't have pulseaudio installed.

Cyberpunkey Monkey fucked around with this message at 23:42 on Apr 7, 2015

Cyberpunkey Monkey
Jun 23, 2003

by Nyc_Tattoo

fatherdog posted:

How about we back up and you explain exactly why you think these questions are offensive instead of continuing yet another systemd derail.

Because they clearly imply a subtext of, "WHY ARE YOU DOING IT THAT WAY YOU loving MORON!? WHY ARE YOU FINDING WEIRD BUGS THAT MAKE ME HAVE TO THINK ABOUT THIS THING!? gently caress YOU!" and then the rest of his verbage since pretty much cemented that subtext as the proper way to read his post.

Cyberpunkey Monkey fucked around with this message at 23:43 on Apr 7, 2015

Adbot
ADBOT LOVES YOU

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
The answer is probably the alsa_dmix API which works by having the first client that connects be the "master" and every other client be the "slave" to it. So, if you launch Firefox first and then start mplayer, Firefox's process takes mplayer's audio, mixes that into it, and then submits that to the kernel.

That works as long as you trust Firefox to mix all the audio correctly, and not have any GC pauses at all. For Firefox, that might be a bit of a ridiculous idea. And then there's a coordination/handoff system if Firefox exits that's quite unstable, to be honest.

For a system where we want to implement clients that are sandboxed and untrusted, having the first random client to connect to ALSA be the gatekeeper in charge of all the sound would probably not be a good idea.

The same is true for microphone input as well (dsnoop): if you have two clients that want to record audio, the first client takes all the input, and then hands it off to other clients.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply