So you pretend that what was running on windows to run in Linux?. Dafuq people are naive af. We are talking mostly enterprise machines, most corporations didnt migrate to windows 11. So its not just installing steam lol
No, those computers can go to underprivileged communities so ppl can have access to word processor, programming, web dev, etc. They would be running Linux and be secure and functional.
Do people actually use LXD in production? All hosting services I’ve seen use LXC and not LXD for containers, as do UIs like Proxmox and Unraid, and you don’t have to use Snap for LXC.
What if, sometime after Win 10 loses support a virus takes advantage of the lack of patches and propagates across all the machines with a simple message “This operating system is no longer supported, please click here to upgrade.” The button then runs a script to download and install a user friendly Linux distro. The world is then saved.
My problem with appimage is that they never work. Every time I tried one, best case scenario it crashed with a random error message. All attempts to fix them were damn near impossible to debug.
It honestly felt like they were not universal enough and still relied on certain libraries being available on OS. Hopefully I’m wrong because that would completely defeat their purpose. I stopped wasting time on them after Plex and VLC both failed to run reliably and switched to flatpak that “just works” 100% of the time.
To be honest most of the time I look for an rpm anyway. Flatpaks are always a last resort. I’m on OpenSuse Tumbleweed.
This was my experience as well as a developer trying to package an application as an appimage. Creating an appimage that works on your machine is easy. Creating one that actually works on other distros can be damn near impossible unless everything is statically linked and self contained in the first place. In contrast, flatpak’s developer experience is much easier and if it runs, you can be pretty sure it runs elsewhere as well.
I use Emacs + spacemacs in VI mode as a base for all my text editing on both Linux and windows (which is unfortunately required for work on occasion) machines.
For dev environments I mostly use nix + direnv + direnv-mode.
For C# I use the above plus omnisharp-roslyn + lsp-mode.
I tinker in all sorts of languages, and they all have at least basic support in the Emacs ecosystem. The popular ones should have fully functional language servers and debugger adapters.
I use Emacs + spacemacs in VI mode as a base for all my text editing
Do you specifically prefer using Spacemacs as a base over Doom Emacs? Or is the usage of Spacemacs primarily attributable to it coming earlier to the scene?
Furthermore, as you’re using it in “VI mode”, would it be fair to assume that you’ve got some experience/history with Neo(Vim) as well? If so, what led you to making the switch from (Neo)Vim to Emacs?
For dev environments I mostly use nix + direnv + direnv-mode.
Very interesting! Relying on Nix rather than Distrobox has been something I’ve been pondering upon. But besides the fact that I’m still very new to Nix as an ecosystem, I’ve also got my concerns related to what degree the containers can be sandboxed. Do you happen to have some insights on this?
Or is the usage of Spacemacs primarily attributable to it coming earlier to the scene?
Yeah, pretty much just that. If was to start again now I’d consider other options, but I have no serious complaints about spacemacs. I probably would have never got into Emacs at all if I had to start with vanilla.
Furthermore, as you’re using it in “VI mode”, would it be fair to assume that you’ve got some experience/history with Neo(Vim) as well? If so, what led you to making the switch from (Neo)Vim to Emacs?
Yeah, I used VIM (and I still do when I’m in an unfamiliar environment), but only before neovim existed. IMO Lisp is what makes Emacs great, and vimscript is (was?) an absolute nightmare for anything complex. I don’t think lua is a bad language, but I’ll still take Lisp any day for this purpose.
I’ve also got my concerns related to what degree the containers can be sandboxed. Do you happen to have some insights on this?
What I described isn’t using containers. Nix just provides an environment for processes to run in, and direnv-mode ensures it’s using the right environment for a given buffer in Emacs. So for example I don’t have OmniSharp or dotnet in my user $PATH, but they are provided by the nix expression in a particular project directory. That allows lsp-mode to start OmniSharp as a language server, or I can run dotnet build using the Emacs compile command.
You can define containers with nix and manage them with nixos-container. I do that for testing server deployments, or running sandboxed services, but I’ve never needed something that complex for a dev shell.
I probably would have never got into Emacs at all if I had to start with vanilla.
Very interesting. I assume this is due to the amount of effort that would have been required for it to acquire some of the functionality you were expecting out of it. Am I right?
IMO Lisp is what makes Emacs great, and vimscript is (was?) an absolute nightmare for anything complex. I don’t think lua is a bad language, but I’ll still take Lisp any day for this purpose.
This is actually a great point that I somehow completely ignored so far. I intend to put my teeth in GNU Guix at some point in the future. As Guile Scheme and Lisp are -to my knowledge- at least in some way related, using Emacs should at least provide an excellent platform for me to get accustomed to what it is yet to come. Thanks for mentioning that!
What I described isn’t using containers. Nix just provides an environment for processes to run in, and direnv-mode ensures it’s using the right environment for a given buffer in Emacs. So for example I don’t have OmniSharp or dotnet in my user $PATH, but they are provided by the nix expression in a particular project directory. That allows lsp-mode to start OmniSharp as a language server, or I can run dotnet build using the Emacs compile command.
That sounds very compelling! Thanks for that insight! Perhaps I should stop procrastinating and get on with learning Nix 😅.
You can define containers with nix and manage them with nixos-container. I do that for testing server deployments, or running sandboxed services, but I’ve never needed something that complex for a dev shell.
I assume this is due to the amount of effort that would have been required for it to acquire some of the functionality you were expecting out of it. Am I right?
I didn’t really understand what Emacs was at the time, I just got fed up with trying to make vim into an IDE. Out of the box, spacemacs had good language support, modal editing, and looked ‘modern’.
What I love about Emacs now is Lisp and the package ecosystem. I have 396 packages installed, and many of them interact in quite complex ways. When I do a package upgrade it pretty much pulls the latest from the development branch of each package. Some packages haven’t been changed in 10 years, some are changed daily. It’s bleeding edge everything, and things don’t actually break that much. Lisp makes for (obviously IMO) beautiful, simple code, so most packages are a pleasure to fix, extend, or automate.
I intend to put my teeth in GNU Guix at some point in the future.
Me too, but I nix has served me well, so I haven’t been motivated.
Thank you so much for your insights! Much appreciated!
Some packages haven’t been changed in 10 years, some are changed daily. It’s bleeding edge everything, and things don’t actually break that much. Lisp makes for (obviously IMO) beautiful, simple code, so most packages are a pleasure to fix, extend, or automate.
I want to have a better idea for much time is spend on ‘management’; fix, extend and/or automate etc.
This was actually triggered by upgrading omnisharp, which started sending a new notification that lsp-mode didn’t explicitly ignore.
By the time I hit it, that issue had already been reported, so I was able to quickly work around it with a snippet in my main config. I could have also just rolled back omnisharp.
Most problems I’ve had have been solved by upgrading spacemacs to latest.
I really, really want to like Darktable, mostly because of the name lol. I must’ve tried it 8 or 10 times over the years, but I just can’t get my head around it. Something about the design language or the UI or something just doesn’t click for me and I can’t get decent images out of it. So I keep going back to Rawtherapee, even though I’d rather not…
Personally i’m okay with the UI, but the default rendering is often so bad that I have to “fix” every single image. To me it’s either Raw therapee or just reboot into Windows …
You should make a style to apply that brings you (close) to what you want. Out of the box, dakrtable shows you a minimally processed image. Its your job to take it from there.
It shows me a very wrongly processed image. It was better when I used Fuji, but even then it was never anywhere close to what an unprocessed bland raw file should like.
This is too vague to provide any further guidance. Again, darktable shows you a minimally processed raw image by default. You can get a good looking rendering by adding a few more modules in a style and applying that style by default.
Yes, and I understand the process pretty well I think, as well as what I’m striving to output (long time Lightroom user). But the DT just doesn’t respond how I expect it to, with unexpected results. Frustrating.
Wasn’t aware of the pixls site though; I like that idea!
Flatpaks have the concept of runtimes; instead of downloading the entire qt tooling for a qt app the app could just use the KDE runtime same goes for GTK with the Gnome runtime. Flatpaks also have dependencies which can be shared between multiple apps even when they are not part of their runtimes, they are called "baseapps". Flatpak apps still use double the space my normal apps take on a fresh install, so I assume using appimages to replace them will leave no space on my SSD.
Before deciding to settle on using Flatpak I tried to search for appimage permissions and how to set them, but it seems there is no such thing? If that's true then there's another advantage for Flatpaks and Snaps.
Also with all due respect: Flatpak and Snap tooling are not maintained by Probonodb.
What do you mean by AppImage permissions? A sandboxing feature like “access only those directories, those /dev devices, …”
EDIT: obviously this isn’t just for AppImage, but I tested it with AppImage and it work well. Another tip: if you want a package manager for managing AppImage installations try zap (github.com/srevinsaju/zap)
Hi. I’ve briefly shared my experience with neo(vim) and emacs here. Going into all the details would require writing an encyclopedia because they’re both so vast topics. I think the main factor of choice would be to know if you prefer to build your own perfect tool with just what you need and expand as you go (i.e. neovim) or just have a do-it-all ready tool right out of the box (i.e. emacs). Both will require some coding and maintenance anyway. In that regards, I personaly found neovim to be easier and more reliable but mileage may vary based on your needs and preferences. After years using vim 20 years ago, I made a break. Then I used emacs for a year before eventually going back to neovim. I would certainly recommend it vs vim and I would suggest starting from scratch (no lazyvim or similar) so you clearly understand how things work. This will certainly be useful in the long run anyway and that’ll eventually save you time. Note that I’ve also tried welcome screens (startup) but really couldn’t justify its use so I removed it after few months.
I’ve briefly shared my experience with neo(vim) and emacs here.
Thanks for sharing that! I’ve just read through it and it was a very interesting read. Would you mind elaborating upon the following statement?
“the lack of uniformity across plugins coding which sometimes created some conflicts”
I think the main factor of choice would be to know if you prefer to build your own perfect tool with just what you need and expand as you go (i.e. neovim) or just have a do-it-all ready tool right out of the box (i.e. emacs).
That is indeed something that concerns me regarding Emacs. Like being able to surf on the internet or using it as a email client isn’t quite what I expect out of my IDE 😅. I guess the extensibility should allow ‘minimal’ installations, but this is something I should read more into. Thanks for pointing that out!
My statement about the lack of uniformity was in regards to several issues I had with some plugins in emacs. Even my friend who codes his own plugins for emacs was of no help because 1) there is too many approaches and dependencies to write plugins, 2) there was no solution. Also, there are too many plugins to serve the same purpose and I found it difficult (compared to neovim) to figure out the difference between them. At least twice I also experienced conflicts between plugins. Finally, the level of customization was also less granular than what offers neovim. Again, I can see why emacs is appealing to some. It’s just not for me. As I like to say, the number of options available in the Linux world is one of the most beautiful things that makes this OS the only one you can tweak perfectly to any user’s needs and preference.
I would add that neovim and emacs both have a steep learning curve but I personaly found the level of support and core and plugins documentation for neovim more accessible, readable, and better organized.
I completely share your vision about what an IDE should be doing. I’m old school and adhere to the “do one thing but do it right” philosophy. Also, I hate relying on one tool for several needs because if anything goes wrong it has multiple impacts. As a side note, I use neomutt as my email client and you can nicely couple neovim to it to write your emails ;)
Also, there are too many plugins to serve the same purpose and I found it difficult (compared to neovim) to figure out the difference between them.
Interesting.
Finally, the level of customization was also less granular than what offers neovim.
Very interesting. I’d love to hear more about this. Could you elaborate?
I would add that neovim and emacs both have a steep learning curve but I personaly found the level of support and core and plugins documentation for neovim more accessible, readable, and better organized.
I wouldn’t be surprised if this is in part attributable to the fact that Emacs is both an older project and is generally-speaking a bigger and/or more capable piece of software.
I completely share your vision about what an IDE should be doing. I’m old school and adhere to the “do one thing but do it right” philosophy. Also, I hate relying on one tool for several needs because if anything goes wrong it has multiple impacts.
I’ve often heard Emacs users pose the argument that Emacs as an Elisp interpreter does just one thing. It’s just that this single thing allows the myriad of functionality it offers. So in that sense comparing it to a terminal/console seems more apt than comparing it to a text editor. I wonder what you think of that argument.
As a side note, I use neomutt as my email client and you can nicely couple neovim to it to write your emails ;)
Hehe, that’s cool! Currently I’m really happy with Thunderbird so I don’t expect to move away anytime soon, but I’ll keep it in mind.
I’ve often heard Emacs users pose the argument that Emacs as an Elisp interpreter does just one thing. It’s just that this single thing allows the myriad of functionality it offers. So in that sense comparing it to a terminal/console seems more apt than comparing it to a text editor. I wonder what you think of that argument.
I only used emacs for a year so I may be wrong but speaking only about how I used it and my current workflow I don’t see a difference. Looking at the usage (and not the code), my very first impression of emacs was that it’s acting as a terminal multiplexer which I was used to and so I liked this aspect. Anytime you need to do something that goes beyond the tasks of an IDE (calendar, email…) you switch window/panel (I’ve always been confused with the specific emacs terminology). That’s exactly what I’m doing with Tmux where I run neovim and call other apps with a single keybinding. Then I can freely switch from one to another, close one, recall it in the state I’ve closed it…
Again, this is related to the philosophies of emacs and neovim (i.e. do-it-all or do one thing). While neovim is “only” an IDE, emacs goes beyond, and for me this is not a negative criticism of either app. You build a tool with the coding language you need to implement some functionalities. In that sense, to compare apple to apple, emacs has to be compared to neovim coupled to a terminal multiplexer.
Hehe, that’s cool! Currently I’m really happy with Thunderbird so I don’t expect to move away anytime soon, but I’ll keep it in mind.
I used Thunderbird as well and did the switch mainly to allow me to achieve the workflow described above. I do most of my tasks in the terminal. Neomutt would certainly be one additional layer of complexity in your transition to an IDE, unless you chose to use emacs for your emails. Actually configuring emacs as an email client or going with neomutt is pretty similar. But at the end - and this is an example of the higher level of granularity I mentioned earlier - neomutt is more customizable.
Talking about the level of customization of the IDE functionality only, the plugins I use offer more configuration options in neovim as well.
Orgmode is also one (the?) big star player in emacs and neovim is trying to attract some users by developing a similar thing here or there but this is not something that would benefit to my workflow. This is maybe one of the reason why people choose emacs vs neovim and why I could quit emacs easily. Going back to the coding language, you can see that the use of lua opens new doors to the original vim. What I appreciate though is that you don’t have to implement any features if you don’t use them in neovim so I can keep my system limited to my needs. This is also seen as a bad thing by some when you start because emacs is capable of quite a lot with a fresh installation while neovim can barely open itself ;)
Overall we’re all sharing personal experience so no generalization should be extrapolated from single visions and I’m aware of my own bias and preference for singl- task, lightweight, fast tool.
I’m so grateful for the time it took you to write this down. Thank you so much for your contributions in this conversation! I’ve greatly enjoyed reading every one of your replies. While I am currently not in the state to make any promises related to sticking to Neovim in the long run. I do think that I’m at least very interested to explore its possibilities. Have a good one! Cheers!
It’s always difficult to find a good starting point but remember that you’re not married to your apps so you can easily switch from one to another and maybe come back later. Over the years, I’ve seen most of Linux users going that route because 1) it’s fun and you learn a little bit from each experience, 2) Linux users are generally curious, 3) some apps may be more suitable to your workflow at a given time but your workflow may change over time, 4) Linux offers us so many options so it’s like unleashing kids in a toys store, you want to try everything :)
Yup, I think you’ve hit the nail on its head. I’ve decided on using both and explore their possibilities and find how they can be best utilized for my workflow. Thank you for the excellent engagement!
Vi (and other mode-switch vietnam-era editors with cult like followings of which there are none) really impaired my first few weeks of comp sci until a t-a showed me there are options. Modal editors were neat when required, but then we got full keyboards and control keys.
Man, does vi suck, but its thuggy PR volunteers do a good job of keeping people from assessing alternatives.
How long did you try using Vi (or any other “mode-switch vietnam-era editors with cult like followings”)? Have you experimented with any starter kit/distribution/config (or whatever) to ease you in? What do you use now?
Btw, I agree that stand-alone Vi probably is too far of a departure from modern IDEs. As far as I know, it’s not even possible to give it IDE-like functionality apart from a few basic ones. Both Vim and especially Neovim do a better job at bridging the distance. FWIW, Vim only exists like for three decades now, while Neovim’s first release happened in 2014; almost 10 years ago.
I’ve had windows 10 tell me I can’t upgrade to windows 11 because my SSD was formatted incorrectly even though it had always ran windows 10 fine. None of this was properly explained to me or how to fix it. By the time I finally got it working I didn’t even want windows 11.
It’s clearly a move to gain control of what people’s computers will be allowed to run and what information they’ll be allowed to see.
There were already attempts to implement this at the start of the consumer internet days by Microsoft and others, which failed then because many early internet users were paying attention and knew what was being attempted. This time I’m not sure that we’ll be able to stop it without structural changes to society.
Just download .exes for windows and run them with WINE. Don’t have a single snap or flatpack application. If it doesn’t run then u didn’t need it in the first place 👉😎👉
Edit: someone DMed me and took this comment seriously. Bless ur heart
linux
Hot
This magazine is from a federated server and may be incomplete. Browse more on the original instance.