Zistack

joined 2 years ago
[–] Zistack@lemmy.sdf.org 18 points 3 weeks ago (1 children)

That giveaway is also currently active on Steam as well, so one option is to grab the game on Steam and play it that way.

[–] Zistack@lemmy.sdf.org 13 points 2 months ago (1 children)

Sway is basically i3 but for Wayland, so guides for i3 may be somewhat helpful for you.

The man page is probably also worth a read: https://man.archlinux.org/man/sway.5

Short version: Sway/i3 doesn't merely allow you to control your WM via hotkeys, it requires you to. Unless you know/have configured the hotkeys for opening a terminal or an application launcher, you won't be able to do anything. As such, you are looking for a guide on how to configure Sway, rather than on how to use it. Once you know how to configure Sway, actually using it should be immediately obvious.

[–] Zistack@lemmy.sdf.org 3 points 1 year ago (1 children)

I was actually not aware of the RFC or those other crates. Ambassador and portrait seem kindof similar in their overall approach to how they accomplish things, though portrait appears to be solving a very different problem. My crate allows for forwarding based on conversions and not just delegation to members, which appears to be new (and this turns out to be important for my use-case.). It doesn't have anything for dealing with code that isn't in traits, but I wasn't intending to solve that problem.

I absolutely see why it would be nice to put delegation in at the language level. Most libraries aren't going to want to annotate their trait definitions just for this (std included), and having the compiler take care of things solves not only that, but also the annotation data format version issues that come with using proc-macros to do it.

It's a bit weird, though, because my conversion forwarding is actually strictly more powerful than delegation in some ways (but a little less flexible - mixing them grants the best of both techniques). Conversion forwarding allows for traits like FromIterator to be forwarded automatically for wrappers on containers, for example. You can't do that with delegates. It feels to me like you'd want both if you added either one of them in. The issue with trying to put something like conversion forwarding in is that the compiler either needs to know about the conversion traits (From, Into, AsRef, and AsRefMut)(As I write this, I realize I may have made a mistake in my crate... can guess what it is?) or it would need to be told how to do the conversions, complete with all additional generic parameters and trait bounds that would be required in the trait implementation. That's either violating some important abstraction boundaries in the language tools, or just extremely verbose.

 

I'm building up to a new idiom for dealing with generic numeric types and traits, but this is the first step. I made it more general than I probably needed for my purposes, but it seemed like a good idea to just solve the whole problem given that I was going to do much of the work anyways.

Credit to the hereditary crate for inspiration on how to do it.

I'm very new at this software publishing thing, so lemme know if I messed something up.

[–] Zistack@lemmy.sdf.org 3 points 1 year ago* (last edited 1 year ago)

I actually recently just did research on this for my own purposes.

  • Ardour isn't really for MIDI. It technically supports it, and people do use it with some success, but the implementation is buggy and somewhat limited compared to other DAWs. If you're primarily doing recording and working with audio clips, though, Ardour works great.
  • LMMS only does MIDI, and basically doesn't handle recording audio at all. The interface is known to be a bit archaic. I don't know exactly how it compares feature-wise to other DAWs. It might be great if MIDI/synthesizers is all you want to do.
  • zrhythm looks really good, but unless you wanna pay for an installer, building it from source is a wee bit of a pain due to dependency version issues. There is an AUR package, but it failed to build for me.

Those are the FLOSS options that I know about. There may be others, I didn't really look at them. They would be even less popular than the ones that I've listed above.

In the end, I chose REAPER. It's not free, but the trial period is effectively indefinite (the software does not cripple itself after the 60 day period officially passes). The personal license is quite reasonably-priced ($60 USD), and the commercial one ($225 USD) is still not too bad if you want to use it professionally. It's a one-time purchase. You don't need new licenses for updates. It's Linux-native, and it does all the things.

As far as plugins go, the FLOSS software has got you covered. Zynaddsubfx is kindof famous, and Cardinal is a really good modular synth (inspired by VCV rack, which is also free and available). Vital is also quite reputable. There's a whole pile of things available: https://wiki.archlinux.org/title/List_of_applications/Multimedia#Audio_synthesis_environments

As far as installation goes, all of this is available from either extra or the AUR.