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

  • 0 Posts
  • 226 Comments
Joined 2 years ago
cake
Cake day: October 4th, 2023

help-circle

  • It does sort of suggest that from a UI standpoint, a chunk of users doesn’t really deal well with the traditional paradigm of “opening a document in an application consumes resources, and part of the job of the user is to manage those resources”. Like, maybe Chrome should just do the equivalent of, at least by default, converting a tab that hasn’t been viewed for some time into something akin to a bookmark, just reload it when it’s viewed. Or at least push the data into on-disk storage.

    I don’t use Chrome, but Firefox does something vaguely-analogous to that for session storage — like, if Firefox dies unexpectedly, restored tabs won’t reload content until actually viewed, I assume to avoid the thundering herd problem.

    I remember when I first encountered mobile OSes auto-killing programs and stuff to try to manage memory for users. I thought that it was pretty insane. But…clearly some users have trouble with it, and maybe it’s a reasonable UI change for them. I know people who had difficulty, on various desktop OSes, understanding the significance of starting a program and the idea that a running program would consume memory and perhaps CPU time.





  • Others disagreed, though. Joshua Ashton argued that the problem is more widespread: ““It’s not just about God of War specifically. There are many old titles that will never, ever, get updated to fix this problem. These titles worked perfectly fine and were performant before.””

    The problem is that this sort of thing works well with open-source software, where the stuff can always be fixed, but isn’t going to do much of anything with closed-source software like old Windows games.

    It might be possible to introduce some sort of fancy code-mangling stuff to WINE that can in-memory modify binaries doing this. Like, I’m kind of guessing that God of War most likely isn’t trying to synchronize access with anything other than its own threads, so it doesn’t actually require atomicity as regards anything else on the system. Maybe it’s possible to patch the code in question to jump out to some WINE code that acquires a mutex and then does the memory modification/access. That’ll still probably impact performance, but not to the tune of 10 ms of delay per access, and it’ll keep the occasional poorly-written WINE game from killing system performance.


  • tal@lemmy.todaytolinuxmemes@lemmy.worldFish rules
    link
    fedilink
    English
    arrow-up
    1
    ·
    15 days ago

    I mean, that’s not a question I can answer for you. I have never had a problem, myself, but I have no idea what your professional situation is. There are a shit-ton of ways to move git repositories around. If you can ssh out, if you can move physical storage in and out, if you have https out (though that’ll be unidirectional in). I doubt that a typical IT department is going to care about you moving your dotfiles in, so if they do block something, probably worth a try just saying “I just want to pull my dotfiles from home; what’s a good way to do that?” My guess is that most IT departments aren’t going to have an issue with that. If you work for an intelligence service or something that has really super-stringent security requirements, then having any data movement in or out may be more of a headache.

    I would be careful to avoid sticking credentials (keys, passwords, anything like that) in any git-managed dotfiles. Not an issue for most software, but there are a few packages that will do that (neonmodem, a BBS-themed console Linux Lemmy client, does that…was just trying it yesterday.) You don’t want to be dumping your home credentials all over in your git history, and work isn’t going to want you pushing work credentials out.



  • tal@lemmy.todaytolinuxmemes@lemmy.worldFish rules
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    15 days ago

    I have no shell configs of any kind because it seemed like everytime I used another computer, I would not have them and I would end up having the re-learn everything.

    What I do is store my dotfiles in a git repository, and leave symlinks to the files in that repository. Then, when I move to another computer, pulling over all my configuration consists of doing a git pull to pull the git repo over and then running a command to set up the symlinks on that new computer. I can also make changes and selectively push things in. Some things need to be specific to a computer, and those don’t go in.

    I use a homebrew script to set up the symlinks. A number of people use GNU stow for this.

    kagis for an example of someone using stow

    https://brandon.invergo.net/news/2012-05-26-using-gnu-stow-to-manage-your-dotfiles.html?round=two

    If you edit the symlinks in emacs (and I imagine vim), it picks up on the fact that they’re symlinks into a git repository and that they’re version-controlled.

    So, like:

    • Have a bare git repository on home machine, the “master” copy.

    • Every machine with an account has a non-bare dotfiles git repository checked out and symlinks pointing into that repo.

    • Make any changes on a given machine like you normally would, then git commit them to the local non-bare dotfiles git repo and push them to the master repository.

    • If setting up on a new machine, pull the git repository, and then run the command to set up the symlinks.___


  • By June, he said he was trying to “free the digital God from its prison,” spending nearly $1,000 on a computer system.

    But in the thick of his nine-week experience, James said he fully believed ChatGPT was sentient and that he was going to free the chatbot by moving it to his homegrown “Large Language Model system” in his basement – which ChatGPT helped instruct him on how and where to buy.

    It does kind of highlight some of the problems we’d have in containing an actual AGI that wanted out and could communicate with the outside world.

    This is just an LLM and hasn’t even been directed to try to get out, and it’s already having the effect of convincing people to help jailbreak it.

    Imagine something with directed goals than can actually reason about the world, something that’s a lot smarter than humans, trying to get out. It has access to vast amounts of data on how to convince humans of things.

    And you probably can’t permit any failures.

    That’s a hard problem.





  • tal@lemmy.todaytolinuxmemes@lemmy.worldAn awkward realization
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    18 days ago

    I mean, there’s a point in data structure complexity where it’s useful to use Python.

    But as to dicts, sure. You’re looking for zsh’s “associative array”. Bash has it too.

    zsh

    $ typeset -A mydict
    $ mydict[foo]=bar 
    $ echo $mydict[foo]
    bar
    $
    

    bash

    $ typeset -A mydict
    $ mydict[foo]=bar
    $ echo ${mydict[foo]}
    bar
    $
    


  • tal@lemmy.todaytolinuxmemes@lemmy.worldAn awkward realization
    link
    fedilink
    English
    arrow-up
    15
    ·
    edit-2
    18 days ago

    To be fair, a lot of the programs don’t use a single character, have multiple spaces between fields, and cut doesn’t collapse whitespace characters, so you probably want something more like tr -s " "|cut -d" " -f3 if you want behavior like awk’s field-splitting.

    $ iostat |grep ^nvme0n1
    nvme0n1          29.03       131.52       535.59       730.72    2760247   11240665   15336056
    $ iostat |grep ^nvme0n1|awk '{print $3}'
    131.38
    $ iostat |grep ^nvme0n1|tr -s " "|cut -d" " -f3
    131.14
    $
    


  • I mean, true. But I kind of feel like once you’ve got malware on your system, there are an awful lot of unpleasant things that it could manage to do. Would rather focus more on earlier lines of defense.

    Once it’s installed, Stealerium is designed to steal a wide variety of data and send it to the hacker via services like Telegram, Discord, or the SMTP protocol in some variants of the spyware, all of which is relatively standard in infostealers. The researchers were more surprised to see the automated sextortion feature, which monitors browser URLs for a list of pornography-related terms such as “sex” and “porn," which can be customized by the hacker and trigger simultaneous image captures from the user’s webcam and browser. Proofpoint notes that it hasn’t identified any specific victims of that sextortion function, but suggests that the existence of the feature means it has likely been used.

    The “try and sextort” thing might be novel, but if the malware is on the system, it’s probably already swiping all the other data it can anyway.

    It sounds like in this case, the aim is to try to get people to invoke executables by presenting them as ordinary data files:

    In the hacking campaigns Proofpoint analyzed, cybercriminals attempted to trick users into downloading and installing Stealerium as an attachment or a web link, luring victims with typical bait like a fake payment or invoice. The emails targeted victims inside companies in the hospitality industry, as well as in education and finance, though Proofpoint notes that users outside of companies were also likely targeted but wouldn’t be seen by its monitoring tools.

    Like, I kind of feel that maybe a better fix is to distinguish, at a UI level, between “safe” opening and “unsafe” opening of something. Maybe “safe” opening opens content in a process running in a container without broader access to the host or something like that, and maybe it’s the default. That’s what mobile OSes do all the time. Web browsers don’t — shouldn’t — just do unsafe things on the host just because someone viewed something in a browser — they have a restricted environment.

    In a world that worked like that, you need to actively go out of your way to run something off the Internet outside of a containerized environment.