Skip Navigation
Jump
Programmatic access to discord
  • It is likely not worth your effort as whatever you come up with will likely result in discord deactivating your account for breaking their ToS, or them breaking their API forcing you to constantly play catch-up.

    This is why open communication protocols are so important. Email is still as ubiquitous as it is because it's a protocol, not an API.

    I personally think it would be less overall effort to get your friends to switch to an open protocol like matrix, or XMPP than it would playing cat and mouse with proprietary APIs. But you do you, I wish you the best of luck!

    8
  • Jump
    City of Oakland rips out neighborhood's 'hazardous' solution to sideshows
  • If your "community event" has such a high carbon cost of needlessly burning fossil fuels and destroying tires, not to mention the noise pollution and safety aspects, maybe it's time to find a new community event.

    Why not a street take over of bicycles? How about meeting up at a third space like a park, bar or cafe? What about collectively doing some tactical urbanism to improve your community - paint some crosswalks, add bollards to force pedestrianization.

    2
  • Jump
    My Okular settings are messed up. What do? Tried purging the package, tried clearing okular files from "~/.config", no relevant output opening from terminal, nothing in man page bout getting more feed
  • Oof yeah, some programs really love to touch a lot of stuff making strace kind of annoying to use. I usually end up chaining more grep -v pipes on the end as I find files I'm not interested in seeing e.g.

    strace okular | grep openat | grep -v breeze-dark | grep -v icon
    

    Might help to first save it to a file so you don't have to keep relaunching okular as you add more inverse greps

    strace okular | tee some-file
    ^C
    cat some-file | grep -v ...
    
    1
  • Jump
    My Okular settings are messed up. What do? Tried purging the package, tried clearing okular files from "~/.config", no relevant output opening from terminal, nothing in man page bout getting more feed
  • I would probably try running

    strace okular | grep openat

    to see all the files it's trying to read and see if any aren't managed by your package manager and move those.

    But the latest reply by felixernst in the kde discuss also looks helpful.

    5
  • Jump
    average day in NPM land
  • Yeah good point. I suppose the problem is this function that operates on numbers allows numeric strings to be passed in in the first place. The only place where I would really expect numeric strings to exist is captured directly from user input which is where the parsing into a numeric data type should happen, not randomly in a library function.

    15
  • Jump
    Why is OpenSSL able to use a key file my user shouldn't have access to?
  • On my machine at least man openssl shows that -k is for specifying the password you want to derive the key from, so in that case I think you are literally using the string /etc/ssl/private/etcBackup.key as the password. I think the flag you want is -kfile.

    You can verify this by running the command in strace and seeing that there is no openat call for the file passed to -k.

    Edit: metiulekm@sh.itjust.works beat me to it while I was writing out my answer :)

    17
  • Jump
    average day in NPM land
  • It's kind of insane how bad this whole is-number thing is. It's designed to tell you if a string is numeric, but I would argue if you're ever using that you have a fundamental design problem. I hate dynamic typing as much as anyone else, but if forced to use it I would at least try to have some resemblance of sanity by just normalizing it to an actual number first.

    Just fucking do this...

    const toRegexRange = (minStr, maxStr, options) => {
      const min = parseInt(minStr, 10);
      const max = parseInt(maxStr, 10);
      if (isNaN(min) || isNaN(max)) throw Error("bad input or whatever");
      // ...
    

    Because of the insanity of keeping them strings and only attempting to validate them (poorly) up front you open yourself up to a suite of bugs. For example, it took me all of 5 minutes to find this bug:

    toRegexRange('+1', '+2')
    // returns "(?:+1|+2)" which is not valid regexp
    
    31
  • Jump
    There should be a semicolon punctuation for exclamation and question marks.
  • Ah yeah I don't know how I would do that easily on a phone. Do those in my example above render for you? You should probably be able to just copy/paste them on a phone if they do.

    1
  • Jump
    There should be a semicolon punctuation for exclamation and question marks.
  • I can't find a keyboard with them, or a copy/pastable line where they've been typed

    Maybe use combining diacritical marks?

    I'm using 0x326 (Combining Comma Below), but you may need the CGJ in there to render correctly in all contexts

    e.g.

    Foo!̦ Bar?̦

    Edit: Combining grapheme joiner, not zero width joiner

    6
  • Jump
    [solved] Nixos users which emoji app do you use?
  • Since I like to use bemenu I just wrote the derivation myself, it's super short and simple especially borrowing from the build.sh script in wofi-emoji repository. You can get the emoji data like so:

    emoji-data = pkgs.runCommand "emoji-data" {
            buildInputs = [ pkgs.cacert pkgs.curl pkgs.jq ];
            outputHashAlgo = "sha256";
            outputHash = "sha256-znAwFu0vq2B7lQ8uvG0xKv9j3jYr6P0CZpjoKMNPhZw=";
          } ''
            curl 'https://raw.githubusercontent.com/muan/emojilib/v3.0.6/dist/emoji-en-US.json' \
                | jq --raw-output '. | to_entries | .[] | .key + " " + (.value | join(" ") | sub("_"; " "; "g"))' \
                > $out
          '';
    

    And then write a small wrapper script of your liking. I'm using wtype and bemenu, but you could just as easily use wl-clipboard and rofi for instance. This is to me one of the huge benifits of nix, how you can slam these small scripts together and not worry about missing dependencies when taking the configuration to other systems.

    1
  • Jump
    FLOSS communities right now
  • Agreed, but my point is with a centralized network the lowest common denominator wins. There is no reason you can't have QoL features on an open network, and thusly let everyone have the features that they care most about.

    Can you imagine what a shithole the internet would have been if email wasn't federated an open? There is absolutely no way that whatever centralized bullshit would have spawned instead would already be either long gone or enshittified to the point of being useless.

    1
  • Jump
    FLOSS communities right now
  • Good for you, you have a short list of requirements out of a chat service and discord perfectly fills your niche. But different people have different requirements for chat, and they don't align. And network effects force people who have differing requirements to use the service with the most users which sucks.

    For instance here are things that I require from any chat service that I use that discord completely falls flat at:

    • Ability to run it on my linux machine without using an electron client (npm is a huge mess of supply chain attacks and I refuse to run any software that is likely to contain dependencies from it)
    • Ability to run it on my AOSP phone which does not have any google play services installed
    • Ability to write software to back up messages without fear of a company changing their API and breaking my backup system
    5
  • Jump
    Scam Numbers - Reddit's (and possibly the internet's) largest scam number depository, now on Lemmy!
  • I hate that Google is exerting even more control on the internet with their TLD, but I don't really think this attack is made all that much worse with .zip TLD. I can already bury a .com in a long URL and end it in .zip just fine like so:

    https://github.com∕foo∕bar∕baz@example.com/foo/bar/baz.zip

    Or even use a subdomain to remove the @:

    https://github.com∕foo∕bar∕baz.example.com/foo/bar/baz.zip

    The truth is most people don't look much at URLs outside of a domain to verify its authenticity, at which point the .zip TLD does not do much more harm than existing domains do.

    For mitigation, Firefox already doesn't display the username portion of the URL on hover of a link and URL-encodes it if copy-pasted into the url bar. It also displays the punycode representation when hovering or navigating to the second example.

    Edit: looks like lemmy now replaces 0x2215 which is a character that looks like forward slash with an actual forward slash, so my comment is a bit more confusing. For clarity, the slashes before example.com in the above urls were 0x2215 and not "/".

    6
  • Jump
    America needs more small cars!!
  • Wtf does that even mean? Bigger cars are usually more durable in general.

    This is pretty much what I expected from someone who likes large cars. The idea that their car does damage to the road doesn't even enter their mind. Note the immediate jump to "my property is more durable, fuck your/public property".

    4
  • Jump
    Mercedes-Benz is using Qt framework to build new operating system for its cars
  • While I agree that first party systems suck, as someone with neither an iOS or Android device I personally prefer something work rather than a screen that says "connect iOS/Android".

    5
  • Jump
    YouTube cracking on ad blockers.
  • Definitely agree, but your link is protected by cloudflare (yet another centralized service destroying the internet) and therefore I'm unable to get through because I have privacy.resistFingerprinting enabled on my browser so cloudflare is unable to determine I'm human I suppose.

    I despire youtube and it's monopoly, and I think it get's an appropriate amount of hate on here and HN, but what confuses me to no end are the people who complain about youtube turn right around and constantly recommend cloudflare. Can someone explain what I am missing?

    1