• 8 Posts
  • 321 Comments
Joined 4 years ago
cake
Cake day: May 31st, 2020

help-circle

  • I’m guessing, they did it this way, because there’s no persistent process to keep the decrypted files open. You’d need to ask the user for the password for every single command they run. With GPG, that persistent process is gpg-agent.

    Of course, encryption with a GPG key is also going to be more secure than the longest password you can come up with.

    I guess, many people will want access to GPG, too, if they want access to their passwords, so they’re not bothered by it.
    But yeah, I do also remember setting that up on Android, where you need a separate app to do the GPG, and it really stops feeling simple pretty quickly…



  • Man, it really is like an extremely dense but dedicated intern. Does not question for a moment why it’s supposed to make fun of an interval, but delivers a complete essay.

    Just make sure to never say “let’s eat Grandpa” around an AI or it’ll have half the leg chomped down before you can clarify that a comma is missing.


  • Normally, the process is:

    • install the packages for the desktop environment
    • log out (not just locking the screen)
    • find a dropdown or cogwheel where you can select the other desktop environment
    • log in

    Having said that, I don’t know what you mean with “graceful”. Desktop environments may involve lots of packages, which may create configuration files in your home directory or get auto-started in your other DEs, so it can be messy.
    Something minimal, like LXQt or the various window managers, isn’t going to cause much of a mess, though.

    I guess, creating a second user with a separate home-directory, like the other person suggested, would isolate that potential mess…


  • I feel like there’s just too many different programming workflows, to try to pre-install them.

    Here on openSUSE, there’s ‘patterns’ you can install, which are basically just groups of packages, and they’ve got some pre-defined patterns for programming:

    I feel like that kind of goes in a more useful direction, although it’s still partially questionable what those contain. For example, the Java development pattern comes with Ant as the build system, when Maven and Gradle are more popular, I believe.

    I also have to say that I often prefer installing programming tooling in distro-independent ways, and ideally automated in the project repo, to avoid works-on-my-machine situations.
    Of course, something like Git, Docker, VMs etc. tend to be stable across versions, and I might not care for having the newest versions, but even with those, I think it’s good to install them on demand, rather than having them pre-installed. If the distro simply makes it a breeze to install them, that’s ideal IMHO.




  • As others have already said, Kate should work as text editor. I think, the only thing that’s not built-in is base64 en-/decoding, but you can set that up like this:

    That’s for decoding. For encoding, just change the name to “base64 encode” (exact name doesn’t matter) and remove the “–decode” from the Arguments-field.
    This relies on a CLI utility called base64, which is going to be pre-installed on most distros.
    It’s not entirely perfect, because it’ll always insert a newline, as that’s part of the base64 output. If you do want to get rid of that, you could write a tiny script and then call that script instead, but obviously, you don’t have to.

    You can also install Kate on Windows, if you want to give it a test-ride: https://kate-editor.org/
    (The base64 CLI won’t be available on Windows, though.)


  • My workplace preinstalls Ubuntu, personally I’m using openSUSE. I don’t even think that Ubuntu is particularly bad, I’m mainly frustrated with it, because it’s just slightly worse than openSUSE (and other distros) in pretty much every way.
    It’s less stable, less up-to-date, less resilient to breakages. And it’s got more quirky behaviour and more things that are broken out-of-the-box. And it doesn’t even have a unique selling point. It’s just extremely mid, and bad at it.


  • Oh, I don’t think, it really needs the plug. It’s been around since forever, a proper GNU project and all that.
    Sure enough, it’s kind of niche, but there’s even music archival projects that have been typesetting all the works of Mozart et al in Lilypond, so there’s enough of a community to keep this ball rolling for the foreseeable future.

    And well, that’s also kind of where it’s strongest: Transcribing existing music.
    It’s actually less well suited for composing, because you basically can only listen to things by generating a MIDI, and also you can’t move measures around as easily.
    But yeah, I still like it for composing, because I can use a text editor and Git and such, and personally, I also find it helpful to refer to notes with their names for figuring out intervals, rather than them just being random dots between lines…




  • I mean, to some degree definitely yes. You do need some upfront knowledge and some editing steps can be quite tedious.
    I zone out while shoving shapes around the place, so I actually enjoy doing it in my freetime.

    Having said that, we are talking about icons. You usually don’t want those to be particularly complex anyways.
    But the SVG format is also more powerful than one might expect.
    You’ve got a collection of basic shapes. Particularly, paths allow you to draw essentially anything, including some really useful curves. And you can also do some cool gradients and even animations.

    And you can use fonts in the text element, but only like in HTML, i.e. you specify “bold” or “Times New Roman” and hope wherever it’s displayed has that font available. Would definitely not recommend that for an icon.
    Inkscape allows converting text to a path, so that it doesn’t depend on the host system. So, if I ever want a font in an icon, I’d do that in Inkscape and then copy the path element that it created into my text editor.





  • It does have that, the ecosystem is just really fractured and also not good.

    Sort of the ‘standard’ way of managing dependencies is with Pip and a requirements.txt. By itself, that installs dependencies on your host system.
    So, there’s a second tool, venv, to install them per-project, but because it’s a separate tool, it has to do some wacky things, namely it uses separate pip and python executables, which you have to specify in your IDE.
    But then Pip also can’t build distributions, there’s a separate tool for that, setup.py, and it doesn’t support things like .lock-files for reproducible builds, and if I remember correctly, it doesn’t deal well with conflicting version requirements and probably various other things.

    Either way, people started building a grand unified package manager to cover all these use-cases. Well, multiple people did so, separately. So, now you’ve got, among others:

    • Pipenv
    • Pip-tools
    • Conda
    • PDM
    • Poetry
    • Rye

    Well, and these started creating their own methods of specifying dependencies and I believe, some of them still need to be called like a venv, but others not, so that means IDEs struggle to support all these.

    Amazingly, apart from Rye, which didn’t exist back when we started that project, none of these package managers support directly depending on libraries within the same repo. You always have to tag a new version, publish it, and then you can fix your dependent code.

    And yeah, that was then the other reason why this stuff didn’t work for us. We spent a considerable amount of time with symlinks and custom scripts to try to make that work.
    I’m willing to believe that we fucked things up when doing that, but what makes still no sense is that everything worked when running tests from the CLI, but the IDE showed nothing but red text.



  • Honestly also annoying as a not-so-new folk. I just thought about this yesterday, I reasonably expect to clone a random project from the internet written Java, Rust et al, and to be able to open it in my IDE and look at it.

    Meanwhile, a Python project from two years ago that I helped to build, I do not expect to be able to reasonably view in an IDE at all. I remember, we gave up trying to fix all the supposedly missing dependencies at some point…