• 1 Post
  • 83 Comments
Joined 2 年前
cake
Cake day: 2023年6月20日

help-circle
  • Well, I started using Emacs because I was feeling limited by my Vim+Tmux-based workflow. Like you’ve heard from others, what convinced me was the consistency in interface, and the composability that enables.

    Everything is a text buffer. When the text is drawn to screen, it might be resized, colored, hidden, replaced with images, etc, but it’s all still just text. Because of that consistency of medium, all your interactions boil down to manipulations of that text.

    What’s important isn’t the verbatim text, but what the text represents. It could be code (symbol, function, library, in any language, literately), prose (word, sentence, paragraph, or whole book), a file or directory, a button, a list, a foldable outline, a process, a container, a game tile, a typo, a secret, a git object, a pull request, the string you’re looking for, a definition, a chat message, an RSS feed/item, a web page, etc…

    Each of those has a mode (or modes) that makes interacting with those objects in a semantically meaningful way both efficient and composable (to varying degrees).

    That’s why Emacs devotees try to do everything in Emacs. Leaving Emacs means leaving that consistency and semantic expressiveness behind. In a CLI shell, yes everything is text, but it’s comparatively raw. The best you can do is define variables and color it. TUIs bridge the semantic-meaning gap, but aren’t composable with each other. (Same with GUIs, but because of administering remote systems I avoided them when possible.) You can’t add functionality to htop without recompiling the whole thing. You can’t pipe ncdu’s results to rsync. Emacs is a live Lisp machine. You can redefine (or advise) any function on a whim, without restarting.

    That’s not even getting into how everything you do to improve interacting with text improves your experience with all those text-encoded objects. Completions can be filtered and ranked by different algorithms, lines can be “narrowed” to, it has an interactive regex builder, you can autofill with simple, intelligent predictions (like, what’s under your cursor, or a prefix-matching word up-buffer), you can deeply integrate LLMs, reflow and pretty print, follow externally-edited files, transparently access remote resources

    I don’t know. Obviously it’s not for everyone, but using Emacs makes me feel liberated; in control of my software. I love it.

    Thanks for giving me a soapbox and the opportunity to put my thoughts together.











  • Dissenting opinion - You don’t need to change your payment method, but you might want to rent a box outside your country.

    The seedbox provider is providing you sufficient cover. They’re the ones who would have to make the link between the IP you’re using and you. That’s unlikely to happen because they’ve protected themselves.


    A copyright owner (or their agent) that is interested in identifying you from your seeding would send a letter to the data center owner (OVH, Hetzner, etc) saying “Hey, one of your IPs is infringing our copyright! Tell them to stop.”

    The data center owner might forward that letter on to the seedbox provider who is renting space in their data center. Either way, the letter will be ignored and everyone goes on with their day.

    If the copyright owner is sufficiently motivated they can press the issue with some lawyers. Then the data center will provide a name, to make it all someone else’s problem. They don’t have your name though, just the seedbox provider’s, and the seedbox provider is smartly incorporated in another country, which makes litigation complicated (to say the least).

    Now, maybe the copyright owner is a cabal of publishers looking to make a point and have buckets of money to spend. (You did say you wanted to mirror Anna’s Archive.) In that case they’ll work with local law enforcement in the jurisdiction that the seedbox provider is incorporated to go after them there.

    That court case will take some years to resolve, but then your involvement will come down to whether the seedbox provider kept logs associating payers and IPs. They might or might not. If they didn’t, you’re just one person in a big pool of customers.

    If they do have logs associating you specifically to that IP at the time you were infringing the copyright… well, who’s to say your credit card wasn’t stolen?





  • BytertoSelfhosted@lemmy.worldWhat are your Homelab goals for 2025?
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    3 个月前

    On the topic of build times, it took me too long to learn that nixos-rebuild supports remote build workers and targets.

    For example, if I am editing on my laptop, want to build on my desktop, and apply the build to my file server, then I’d run…

    me@laptop$ nixos-rebuild test \
    --flake ~/wherever-it-lives \
    --build-host desktop \
    --target-host file-server \
    --use-remote-sudo
    

    The host names should match the name of the nixosConfiguration output from your flake. If they don’t I think you can specify like, --target-host .#some-machine

    Remote sudo avoids having to SSH as root.

    Bonus tip: Having Tailscale on every machine makes this work reliably from anywhere, network speed as the limit.