Off-and-on trying out an account over at @tal@oleo.cafe due to scraping bots bogging down lemmy.today to the point of near-unusability.

  • 21 Posts
  • 1.3K Comments
Joined 3 years ago
cake
Cake day: October 4th, 2023

help-circle




  • tal@lemmy.todaytolinuxmemes@lemmy.worldIt's hacker time
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    18 hours ago

    history | grep 'keyword'

    If it’s bash, it’s using readline, which is in emacs-like mode by default, and so you can probably use Control-R to do a reverse i-search (incremental search). Enter to invoke the command. Control-C to abort i-search.

    If a search matches multiple candidates, tap Control-R multiple times to cycle back through results.

    EDIT: Also, ! has a built-in search, so if you are sure of the starting string, you can just do that. I generally prefer to use the interactive search to confirm that I’m not invoking something wonky.

    $ touch a
    $ rm a
    $ touch a
    $ !rm
    rm a
    $ 
    

  • tal@lemmy.todaytolinuxmemes@lemmy.worldIt's hacker time
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    20 hours ago

    You copy paste the command.

    $ sudo apt update
    -bash: sudo: command not found
    $
    

    Your distro doesn’t set up/install sudo by default, so your first task is installing sudo, then understanding /etc/sudoers syntax and understanding why the command to atomically replace /etc/sudoers is visudo and why on a multiuser system there’s value to atomic replacement. In the meantime, you probably learn about su and maybe, if your distro has disabled them, how to enable switching to the kernel virtual consoles on tty1 through tty7 so that in the meantime, you can do things as root while staying logged in. Also, you’re going to learn about environment variables, so as to set EDITOR, and where your shell config files live, what a login shell is, and in what shells ~/.bash_profile, ~/.profile, and ~/.bashrc run. Also, you first try running visudo as a regular user, but your distro places visudo in /usr/sbin instead of /usr/bin, so you can’t figure out why it’s not installed and are going to learn about the FHS and mlocate and updatedb so that you can find /usr/sbin/visudo and dpkg -S so that you can figure out which package it’s in and confirm that it’s actually installed and learn about PATH.






  • I am not familiar, but, cutting the “changes” section out of a review:

    https://www.rpgland.com/games/hoshigamiremix/review.html

    Remix adds various, easier difficulty levels, new character art, redone music, a new character, and an overhauled localization.

    Another problem with the game is the extreme lack of portability. It is a DS title, and as such should be capable of being played for small amounts of time at once. Unfortunately, there is no suspend feature to allow for saving while in battle. Factor in that the average battle can take 20-40 minutes and that sometimes one battle immediately follows another with no break for saving, and here’s a game that is not at all good for playing on the move.

    So going entirely off that, it sounds like the remake is probably preferable, but it might not be a good idea if you plan to play the DS game as a “mobile” game — dropping into the thing for a few minutes while waiting in a line or something.



  • tal@lemmy.todaytolinuxmemes@lemmy.worldTerms of Service
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    2 days ago

    Instead of using fbcon (the default, in-kernel framebuffer-based terminal emulator), use fbterm (a userspace framebuffer terminal emulator, which supports backgrounds) with fbv as specified in the fbterm man page.

    It looks like there’s also a patch, fbcondecor, to add background support to fbcon, but it’s not in vanilla kernel.





  • I’m not personally familiar with Synology’s products, but if what’s going on is that you’re using some built-in feature of a Synology NAS to copy files from a USB drive to the NAS and seeing an error, I’d probably try copying that particular file to somewhere else on a PC, cutting the NAS out of the loop, to make sure that you don’t have, say, a corrupt filesystem where attempts to read the file contents are failing.



  • untested

    Require new contributors to add test code with their patch that hooks into your continuous integration system, and have part of that CI path use a code coverage tool to validate that their test code is actually executing the patch in question?

    I mean, that:

    • Creates a speedbump that I’d assume that low-effort patches — LLM-generated or otherwise – won’t get past.

    • Shouldn’t obstruct someone willing to put effort into their patches.

    • Doesn’t affect long-term contributors at all.

    • Ensures that at you have at least some level of minimum test coverage. Yes, theoretically they could have not actually run their test code themselves and only have it running as part of your CI path, but even then, at least something is running it, and it’s probably going to be pretty obvious if they keep pushing a PR many times until it passes.

    • If you can get some LLM to generate test code that’s actually being run, good (well, okay, it might not be sufficient, but it’s at least clear that it’s not crashing the program or similar).


  • It doesn’t seem like a crazy idea to me to have some “second tier” of packages that undergo a higher level of scrutiny and have to pass that before they are released in that tier.

    Maybe an arbitrary set of security endorsements would be more flexible.

    That permits retaining a low bar for just making the stuff initially-accessible in packaged format, but also helps developers in raising the floor.

    Like, okay. Say I have something like:

    $ cat .config/npmrc
    required_security_endorsements=["npm_auto_audit", "maintainer_id_validated", "european_cybersecurity_competence_center_tier_1", "nsa_tier_1"]
    $
    

    An attempt to install a release of a package without those endorsements fails.

    That’s going to always create pressure to get something a security endorsement so that it can be used by people who only permit packages with some given security endorsement, but it lets parties start running security endorsement projects to improve the situation without excluding any existing projects from pushing stuff to npm.

    EDIT: Also, I’ve not done much node.js development, but assuming that the dependencies in a package manifest default to the newest version unless specific frozen versions are mandated, a la PyPI, it might reasonably be able to fall back to versions with the required security level automatically, if they’re available. If the dependency format permits specifying optional dependencies, a particular dependency could be automatically excluded to conform to the security endorsement requirements list.