Cyno

joined 1 year ago
[–] Cyno 2 points 2 months ago* (last edited 2 months ago) (9 children)

I'm trying out popOS and even the native package manager (popOS shop?) installs most applications as flatpaks afaik? I have no idea where they end up being compared to windows' program files or what kind of defaults they install with. I started putting my custom downloaded AppImages into the ~/Applications folder and then used AppImageLauncher to actually have them show up in search.

Then I will run into something like docker which is not in the shop and has a ton of commands you have to run in order to get it to work, like uninstalling conflicting packages, installing some certificates and keyrings and i dont even know what - it was supposed to work better than on windows but it is nowhere near as neat as there!

Then I install samba (again, not available in the popOS shop) and I have it running but i have no idea whether it's set to automatically run or not. Searching for it with GUI tools doesn't show it as installed anywhere so in this case i have to rely on the terminal. The popOS store does have a list of installed apps but the search field gets disabled when you go into this screen because it's only used for browsing the shop, not through your installed apps?

I’d say that the best learning resource you can have is a spare computer specifically dedicated to exploring Linux, with which you can install and break and configure and break again without worry. Learning Linux can be like playing a roguelite, and I mean that also in the sense that it can be fun.

This is what I do but the issue is that I have no feedback on whether Im doing the right thing or if im making the life unnecessarily difficult for me. Games will slap you and make you redo something if you fuck it up, linux just makes you live in agony until sometimes breaks and you dont know why.

[–] Cyno 2 points 2 months ago* (last edited 2 months ago) (12 children)

Isn't there a lot of overlap though, at least between OSes that are of the same type (like debian/ubuntu)? How to set up users, knowing that you need to manually configure automatic mounting of your drives, knowing how/when to use flatpak or apt or .deb, where to install apps... These are not really intuitive things, especially for someone coming from windows, and most "how to install linux" guides don't really go into these in any meaningful way.

For instance at first I thought I could just keep a list of apt commands and make an "easy to reinstall" linux script at one time, and that lasted for whole of 10 minutes before I realized every app needs manual intervention in one or another way, or has a different way of installing. Also, as many people I just prefix everything with sudo to get it to install, but who knows if that is the correct thing to do? not me at least

[–] Cyno 1 points 2 months ago (1 children)

I've only gone through the reddit thread and tbh most people seem to be bashing this method and pointing out flaws? It doesn't seem like a magic bullet solution and dual boot seems like the better option, at least for now.

[–] Cyno 2 points 2 months ago

Yeah I'm the same way, there is a 6h video linked in your post but i can't imagine myself actually going through it like that lol. I'm also in the process of trying to move data and media off my main PC but haven't figured out the best way yet, I have an older laptop that I was considering setting up as a mini pc/home server but then there's also the option of buying a NAS... it gets complicated and more expensive fast either way.

[–] Cyno 2 points 2 months ago (3 children)

Can you elaborate? Googling linux vfio just gives me text heavy documents I dont understand. How does that replace dual booting and how would I use it?

[–] Cyno 2 points 2 months ago (2 children)

Oh didn't see that one, thanks! Of all the advice there did anything stick with you and help in the end?

[–] Cyno 6 points 2 months ago* (last edited 2 months ago) (14 children)

But to truly master Linux, you need to understand its internals, like how the system boots, how networking works, and what the kernel actually does. In this third edition of the bestselling How Linux Works, author Brian Ward peels back the layers of this well-loved operating system to make Linux internals accessible.

Isn't it too advanced? Seems like a good book but like the opposite of what I meant - I'm curious about beginner resources that will get people interested, knowledgeable and comfortable about using linux on a daily basis as much as they are with windows after decades of using it, not to turn them into a "superuser familiar with internals like kernel, networking, LVM".

[–] Cyno 2 points 3 months ago (1 children)

Well mocking a repository is pretty much the same process as mocking the dbcontext too, right? If that's the only purpose then I can see why they would seem unnecessary

[–] Cyno 1 points 3 months ago* (last edited 3 months ago) (1 children)
  1. but if I do it on the repository layer I have to have a separate method for every possible filter combination, right? if i want to do it on the service layer i have to return an IQueryable which is also allegedly a bad practice (and i might as well return the entire dbset at that point)? also, should the repository be aware of my application (or even view) layer dto models?
  2. this means the service has direct access to the database (dbcontext in this case)? or do you expose opening a transaction through some repository too?
[–] Cyno 1 points 3 months ago (1 children)

Additional question - I said at first that the "Service" should be doing the mandatory checks like uniqueness validation or whether the fields are filled in properly with good values, but is even that a good approach?

Instead of implementing this in every service that might create a new Movie (and it could be from different sources - import from file, different APIs, background worker, etc), wouldn't it make more sense to add these checks to the repository itself so they always gets called?

Alternatively, do we have to handle a constraint violation in every service or could we just have the repository return a result with failure if it happens?

In short, once I start thinking in this way I start to wonder why even have a separation between repository and service.

[–] Cyno 3 points 3 months ago* (last edited 3 months ago) (2 children)

I'm not that familiar with newer c# code and only recently started with result pattern but tbh, I can't tell what is this code supposed to do. Does opt resolve to true or false in this case? Why do you want TestStringFail to always execute, and what should it return? Why is opt.None true when it was initialized with a valid string value, what does None even mean in this context?

[–] Cyno 1 points 3 months ago* (last edited 3 months ago)

Saying I learned it is a stretch, we still dont use it at my workplace and I just read some random guides and tried it on my personal projects. I also wouldn't know about using it in frontend, I mostly just use it to make it easier to test my backend (c#) methods during development without having to struggle with setting up reproduction steps and go through the entire frontend every time.

https://learn.microsoft.com/en-us/visualstudio/test/quick-start-test-driven-development-with-test-explorer?view=vs-2022

view more: ‹ prev next ›