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

help-circle





  • As pointed out by @themoonisacheese, immutable distros are getting some traction recently and they are good for making a system reproductible, allowing easy rollbacks, but this should not make a big difference, privacy-wise. It also add some work for configuration / learning. Here are two levels I’m thinking of from what you presented:

    • You go with any stable (big fan of Debian here too) so to avoid data breaches from brand new packages (xz…), then you can compartimentize your application with Flathub and manage the rights with Flatseal. If you go with software with less telemetry (Firefox), this should be a reasonable and easy to use setup. The rest of the privacy will depend on what is going on inside of your web browser, probably.

    • The next step would be something like Qudes-OS + Tor. If your workflow / usecase allows it, this should be a good step up for privacy. Your laptop seems beefy enough to handle the many VMs, and the install is easy enough imo.




  • Welcome to the community!

    Seconding all the previous comments recommending Linux Mint: since you come from Windows, you’ll probably feel most at home there. It is also possible to do all common tasks without ever opening the terminal.

    Mint should run fine on any hardware, but to be most safe, try to use something that is at least 1-2 years old and stay clear from dedicated GPU as first (in particular Nvidia).

    I’d also advise that the packaging situation for distributing software in Linux rn is somewhat messy. Thankfully, multiple format (apt, Flatpak) are directly available in the Linux Mint Software Center. In case you need to use some proprietary software (Chrome, Spotify, idk), you’d probably want to go with Flatpaks.








  • Okay, I could reproduce your situation by evaluating

    (setq initial-major-mode 'org-mode)
    (setq-default major-mode 'org-mode)
    

    This setup forces the scratch buffer to be in org-mode, apparently breaking most of the available keybindings for it, including the undo.

    The value for the initial-major-mode should be kept as lisp-interaction-mode, if your configuration requires to set it.

    Otherwise I would remove both of these lines all together and see if the default behavior brings back the scratch buffer to be in the expected lisp-interaction-mode again. The additional hook I provided in my previous post shouldn’t be needed either.



  • After checking the source, it looks like this error is triggered when the buffer-undo-list variable is equal to t, which means the buffer is unmodified, or at least that this variable is not modified from the scratch buffer.

    There is something else in the documentation of this variable: <If the value of the variable is t, undo information is not recorded.> Maybe you can try to fix your issue by forcing the buffer-undo-list variable to nil for the elisp mode, as follow:

    (add-hook 'elisp-mode (lambda () (setq-local buffer-undo-list nil)))


  • Hi, That’s a surprising issue, especially if the scratch buffer is the only text buffer in which the undo doesn’t work. Here is what I’m thinking right now:

    • Just to be sure, isn’t your scratch buffer in read-only ? You can toggle that with C-x C-q.
    • Is the keybinding you are using to undo set properly ? You can check it with C-h k C-/ (for example, for checking C-/).
    • If it’s none of these, I’d try to run the undo function directly with M-x undo to see if you can get some meaningful error messages.

    I confirmed with both my personal config that uses undo-tree (great tool btw) and also in a default configuration of Emacs; both cases work fine to undo in scratch.

    Hope any of that can help!

    Cheers