• 0 Posts
  • 3 Comments
Joined 1 year ago
cake
Cake day: June 15th, 2023

help-circle
  • 418teapot@lemmy.worldtoSelfhosted@lemmy.worldProgrammatic access to discord
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    1
    ·
    2 months ago

    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!



  • 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.