Announcement

Collapse
No announcement yet.

Lennart Poettering Announces New Project: casync

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • grok
    replied
    Ramblings about Pulseaudio :

    1. It lacks useful user visible features such as an equalizer or mix to mono.
    I can add a mix to mono item by creating a sink in a config file but that's Unix sysadmin task and it's boring to have to look it up on the web every time.

    2. I'm knowledgeable enough to disable or remove ALSA and Pulseaudio to install OSSv4 instead, if I really want to. But how to set up Pulseaudio + OSS? That was a few years ago but I didn't go far looking it up. It's likely a distro's job but it's such an uncommon set up. Didn't want to spend days searching very small corners of the web and writing config files.

    Leave a comment:


  • caligula
    replied
    Originally posted by rabcor View Post

    Never tried to achieve that, but I would be surprised if it's not possible. Whether it's possible or not with just alsa alone or not, it would definitely be possible to arrange this. by writing a simple sound management software that detects when new devices are plugged in/out and makes alsa switch the default audio device when that happens. I've been thinking about writing such a software for a while now, but been too lazy cus I don't really need it, I pretty much don't use headphones in the first place. There's definitely no need for a huge clunky piece of crapware like pulseaudio to achieve this, pulseaudio is orders of magnitude more complicated and redundant than it needs to be to achieve these kinds of things.

    Look at all the shit pulseaudio does https://upload.wikimedia.org/wikiped...io-diagram.svg all the shit that can go wrong...

    You'd be lying if you told me you need all that shit. Pulseaudio is like a fully furnished 3 story house with a garage but it's owners pretty much only use the garage part. Why install all these redundant complicated useless features and functions when all you need is a tiny subset of it?
    You do realize that Pulseaudio is modular, right? If you use pulse enabled apps only, the application layer interfaces directly with PA. I don't use libao, libxine, arts, or libgnome, but I'm sure those users appreciate those emulations. If you don't use them, they don't even need to be loaded. I only use the alsa layer for apps that still rely on alsa, but that's a minority of apps. Next, on the middle layer, I don't use OSS, but isn't it obvious that it needs to interface with some backend tech? Either OSS or ALSA. I don't use RTP either but I use the network tunnels and few other plugins.

    Basically what you said is that the use case I described can't be done with alsa+dmix right now. So, at least for me pulse solves this use case. I don't want to rewrite that from scratch. The next thing I need is network tunnels and I don't want to rewrite that either.

    Leave a comment:


  • rabcor
    replied
    Originally posted by caligula View Post

    Maybe this gives some idea. Possible with Pulseaudio, but does this work with alsa+dmix:

    1. boot your computer
    2. system loads, initializes alsa, pulseaudio, bluetooth, and sets the builtin sound card as default
    3. click the firefox icon and start the browser
    4. play a youtube video, sound comes from big speakers connected to internal sound card
    5. decide you want to listen to the video via bluetooth headphones. Turn on the headphones.
    6. headphones appear as secondary device in volume control, pulseaudio knows you prefer them so it automatically switches all audio currently playing (the youtube video) to bluetooth headphones.
    7. start a game. sound goes to headphones right from the start. doesn't matter if the game uses alsa/pulse interface
    8. decide you want to share the game sounds with everyone else. Turn off headphones.
    9. pulse automatically switches back to internal sound card and sound playback continues from bigger speakers

    So this really is possible without pulseaudio?
    Never tried to achieve that, but I would be surprised if it's not possible. Whether it's possible or not with just alsa alone or not, it would definitely be possible to arrange this. by writing a simple sound management software that detects when new devices are plugged in/out and makes alsa switch the default audio device when that happens. I've been thinking about writing such a software for a while now, but been too lazy cus I don't really need it, I pretty much don't use headphones in the first place. There's definitely no need for a huge clunky piece of crapware like pulseaudio to achieve this, pulseaudio is orders of magnitude more complicated and redundant than it needs to be to achieve these kinds of things.

    Look at all the shit pulseaudio does https://upload.wikimedia.org/wikiped...io-diagram.svg all the shit that can go wrong...

    You'd be lying if you told me you need all that shit. Pulseaudio is like a fully furnished 3 story house with a garage but it's owners pretty much only use the garage part. Why install all these redundant complicated useless features and functions when all you need is a tiny subset of it?

    I should probably write that audio management software, my biggest reason for not testing this all out right now is cus I've been having some wrist problems lately so I can't code D: I'm scared about getting carpal tunnel syndrome or something if I push it too much.

    Leave a comment:


  • caligula
    replied
    Originally posted by rabcor View Post

    I'm not too clear on the terminology, but changing your default playback device or telling an application to use a specific playback device without restarting anything? yes you can. (But for software to be able to target a specific playback device they must be coded to support it like media players usually are, with options to choose playback devices, otherwise yes, you still have to restart them and set the playback device for it before it is run. But I don't see the problem with that, windows doesn't have the ability to on-the-fly swap out playback devices for applications that do not specifically support it either)
    Maybe this gives some idea. Possible with Pulseaudio, but does this work with alsa+dmix:

    1. boot your computer
    2. system loads, initializes alsa, pulseaudio, bluetooth, and sets the builtin sound card as default
    3. click the firefox icon and start the browser
    4. play a youtube video, sound comes from big speakers connected to internal sound card
    5. decide you want to listen to the video via bluetooth headphones. Turn on the headphones.
    6. headphones appear as secondary device in volume control, pulseaudio knows you prefer them so it automatically switches all audio currently playing (the youtube video) to bluetooth headphones.
    7. start a game. sound goes to headphones right from the start. doesn't matter if the game uses alsa/pulse interface
    8. decide you want to share the game sounds with everyone else. Turn off headphones.
    9. pulse automatically switches back to internal sound card and sound playback continues from bigger speakers

    So this really is possible without pulseaudio?

    Leave a comment:


  • grok
    replied
    Originally posted by Zoll View Post
    So folks, say I want to ship some version of Ubuntu Mate for Raspberry PI, and want to do push updates to it via the Web later on with possible rollback if things break. What's the best method to do this today?
    Perhaps you should look into Nix OS instead as the package manager itself does atomic commits and rollbacks - it guarantees reproducible changes.

    That might be a more useful level than a glorified rsync, cp -a or dd if=network of=/dev/sda on top of some btrfs/zfs/cow thing.
    Not sure if it works if you break it so much as to render it completely unbootable but would seem very robust for the rest.

    An entirely different feature is FreeBSD boot environments. I'm not qualified to explain what these do but intuitively this seems about snapshotting your boot system so that you can break your computer and not sweat about it. This might have been implicitly referred to with the comment about TrueOS.

    Leave a comment:


  • grok
    replied
    Originally posted by aht0 View Post
    It would be pretty stupid getting rid of ISOs. Blank drive, fresh install - ISO becomes mandatory. Unless you are into IMG files, which take often even more disk space. Either way, you need installation media images to get going..
    If you don't want isos, there's PXE. Could be worth having pet distros support a PXE installer before going with sync astrophysics. A big offender is linux mint (it supports only the graphical installer run from live desktop anyway. I suppose that simplifies the release process)

    Leave a comment:


  • rabcor
    replied
    Originally posted by caligula View Post

    Ok, I had no idea all that works with alsa & dmix. So you can switch between sinks while the app is running these days? No need to close the browser to switch to bt headphones?
    I'm not too clear on the terminology, but changing your default playback device or telling an application to use a specific playback device without restarting anything? yes you can. (But for software to be able to target a specific playback device they must be coded to support it like media players usually are, with options to choose playback devices, otherwise yes, you still have to restart them and set the playback device for it before it is run. But I don't see the problem with that, windows doesn't have the ability to on-the-fly swap out playback devices for applications that do not specifically support it either)

    Leave a comment:


  • starshipeleven
    replied
    Originally posted by TiberiusDuval View Post
    Hmm something like TrueOS does, it uses ZFS way of snapshot, as far as I know Linux BTRFS can do same. So in Ubuntu case before update snapshot is taken, and relevant, marking in bootloader, then normal apt-get does its work. If update borks whole system, you just load older snapshot.
    +1 to this.

    Turris Omnia (a high end router made for enthusiasts) uses btrfs to do that and it works fine.
    Snapshots on each upgrade and if it does not boot anymore the bootloader tries to boot from an older snapshot. Their uboot (bootloader) has non-mainstream patches to support btrfs, of course.

    On a raspi the bootloader is dumb as a bag of bricks and not really modifiable, so this logic will have to be implemented in the kernel/initramfs you leave in the boot partition.

    Leave a comment:


  • TiberiusDuval
    replied
    Originally posted by Zoll View Post
    So folks, say I want to ship some version of Ubuntu Mate for Raspberry PI, and want to do push updates to it via the Web later on with possible rollback if things break. What's the best method to do this today?
    Hmm something like TrueOS does, it uses ZFS way of snapshot, as far as I know Linux BTRFS can do same. So in Ubuntu case before update snapshot is taken, and relevant, marking in bootloader, then normal apt-get does its work. If update borks whole system, you just load older snapshot.

    Leave a comment:


  • ermo
    replied
    Originally posted by droidhacker View Post
    I tried to read that post about what casync is, and its about as clear as mud. So what does this actually *do*? Is it like Git for binary data with an rsync like interface?
    As clear as mud?

    - You serialize your data in a nice, reproducible format (akin to tar, but with nicer properties)
    - You chop up your serialized data as chunks of variable size based on some clever criteria (smaller files are combined, larger ones chopped up)
    - You compress each chunk individually
    - You calculate a strong hash of each compressed chunk
    - You name each compressed chunk after its strong hash and save it as a file in some directory
    - You save the hashes in a linear array index file
    - You compare local and remote index files
    - You download/upload the missing compressed chunks (each chunk is conveniently named after its hash value, remember?)
    - You re-combine the uncompressed chunks in the correct order

    I'm not sure I understand what is unclear about that? Did you read the entire article? Or did I miss some obvious sarcasm...?
    Last edited by ermo; 13 July 2017, 03:18 AM.

    Leave a comment:

Working...
X