feddit.it

Imgonnatrythis, to piracy in I’m sorry, but I cannot help you with finding pirated movies. Piracy is illegal and unethical 😉

The irony of gpt talking about copyright violation is just so fucking rich.

blotz, (edited ) to linux in Good Nix OS series: five articles for new users.
@blotz@lemmy.world avatar

What’s up with the ux design of nix? I get it’s made for advanced users but still. I’m reading through this guide and man it’s convoluted.

The different ways of installing packages. Either through editing the configuration.nix or running a command. The weird inconsistency of nix commands. nix-env -iA to install and nix-env --uninstall to uninstall. Then updating uses nix-channel --update but upgrade uses nixos-rebuild switch --upgrade. All this to use the package manager. Also haven’t even mentioned flakes or home manager.

It’s a cool OS, but the UX really needs work imo.

[Edit] I do wanna add something else too because I feel like my point isn’t getting across.

It’s okay to have a complicated ui. Especially if your target audience are tech-savvy. But even tech-savvy people have to start as new users. A tech-savvy new user isn’t going to know what the best practices are. Being able to anticipate the steps for installing a package is important for ux. If the commands for installing packages isn’t cohesive/intuitive, then the user has to spend more time looking for guides and learning how to use the software.

People also mentioned a new command in the works. This is great! However, these current commands are being recommended through blogs and nix. New users won’t know about this new command.

million, (edited )
@million@lemmy.world avatar

After trying out Nix as a package manager I realized I have a pretty different world view than the makers of Nix. I agree with the end goal but how they are trying achieve it is just alien to me. The nix command line is just downright user hostile.

I am personally hoping that someone else takes a stab at the Nix concept but have accepted Nix isn’t for me.

filister,

The errors are also pretty terrible, usually the thing that interests you is buried under a lot of text that makes troubleshooting a real pain.

wewbull,

Yep, today I had a typo in a package name, and it cascaded into a syntax error. The syntax was absolutely fine.

AI_toothbrush,

Yeah because when you make an error it causes a snowball affect and it shows you too little information but when you look at the trace its a wall of errors.

callyral,
@callyral@pawb.social avatar

oof, yeah.

i had a syntax error in my dotfiles that took me two hours to solve.

it was a missing semicolon that was wayyy above where the error said it was. it didn’t even say missing semicolon, instead saying unexpected ‘}’ on line …

CrabAndBroom,

I’ve read so many things that try to explain what flakes are, and for the life of me I still don’t understand what they are or what they’re for lol.

madmaurice, (edited )
@madmaurice@discuss.tchncs.de avatar

Imho I wouldn’t bother with nix-env or nix profile. It just creates a secondary list of packages that needs to be maintained and it’s cumbersome to do so. There’s nix-shell or nix shell if you need a package temporarily and there’s your configuration.nix or flake for everything else.

Side note: nix profile at least has consistent commands: install/remove/upgrade

rutrum,
@rutrum@lm.paradisus.day avatar

Here’s an example of a tutorial that uses flakes and the new cli. You might glance through here to see how the syntax compares: zero-to-nix.com/start

rutrum,
@rutrum@lm.paradisus.day avatar

They have resolved this exact problem. There is an “experimental” cli tool that fixes a lot of your complaints about nix-env, nix-channel, etc. Itcs wrapped together with “flakes”. This newer feature is a little different, and working with or without flakes segments the community AND the types of articles about nix, like this one.

As far as I know though, nixos related thing still have a bizarre set of commands, and even with flakes “nixos-rebuild switch --upgrade” is still how you switch configs.

And as far as installation goes, using nix-env -iA really is a bad practice. Thats installing something ad hoc like you would in any other package manager. That defeats the point of nixos, where your configuration file explicitly defines all the packages you need installed, and nothing else. Nix will remove any packages you didnt specify.

blotz, (edited )
@blotz@lemmy.world avatar

Oh that’s good that they are addressing those issues with a new command. Hopefully it gets into stable soon.

Might be that nix-env -iA is bad practice! I’m strictly talking about ux design here and nix-env -iA is being recommend by blogs and nix themselves. (Nixpkgs tells you how to install using nix-env -iA)

A new user isn’t going to know what bad practice is.

MaliciousKebab, (edited )

It actually recommends using nix-env -i, which is even worse because with that command it searches the whole repository instead of just getting the correct attribute on nixpkgs. It takes half a minute to run the command, it’s insane.

lambda,
@lambda@programming.dev avatar

What is this experimental tool called so I can read more about it?

rutrum,
@rutrum@lm.paradisus.day avatar

Add this to your nix.conf: experimental-features = nix-command flakes

Then check out nix --help.

mvirts,

I do think it’s important to emphasize the difference between installing software in user environments and system wide, which is why the tool is named nix-env. System packages must be installed via the nixos configuration file and a rebuild.

To me the biggest missing piece for new users is a tool to help manage your system configuration and reduce the frustration of having to constantly look up nix syntax or nixpkgs quirks. Maybe thinking of it as a nixos/nix IDE? Also a polished distribution built on nixos would be a good starting point (and easy to do, I didn’t realize I could just copy someone else’s configuration until well after I had my system working well enough)

The other thing that got me starting out is the need to garbage collect old packages. It’s not strictly necessary if you have a large enough disk, but it took me several iterations of filling my root partition before I figured out how to properly clean up old generations.

lambda,
@lambda@programming.dev avatar

Have a good guide on cleanup? 👀

mvirts,

I think ultimately

Sudo nix-collect-garbage --delete-old

Is my go-to command. For a while I was looking at generations manually, but now I just wait a while (days, a few reboots, or until I need more space) to run this after changing things in case the new stuff is broken.

I think running this as my normal user cleans out old env generations… But I’m not 100% sure.

pr06lefs,

There is controversy in the nix world because nix flakes were (some say) merged without proper vetting first. OG nix diehards don’t want to taint nix documentation with ‘experimental’ flakes. But probably the majority of nix users are all in on flakes. So you have documentation from the OG camp that doesn’t include flakes, and you have innumerable unofficial guides for the flakes way. This on top of the quirkiness of nix the language and the multiple ways to do things. Unfortunate.

IMO nix-env was a mistake. It feels like an imperative package manager which may be comfortable to new users who are used to apt or similar. But really what you should be doing on nix is maintaining *.nix files which document/specify your system setup, and nixos-rebuild to update your system to that configuration. Similarly, nix channels are an imperative holdover, which can be done away with if you use flakes, which results in your current nixpkgs version being documented in a system level flake.lock file.

blotz,
@blotz@lemmy.world avatar

I think both nix-env and flakes are designed with making package management easier. Nix-env tries to make it intuitive and familiar for new users. Flakes improve package management by simplifying the configuration.

Personally I would love to see syntax highlighting, language server, code completion. Maybe all in a dedicated application which is configured to give the easiest experience for new users. If nix is intended to be managed through config files, then the experience of writing a config should be as easy as possible.

itslilith,
@itslilith@lemmy.blahaj.zone avatar

Syntax highlighting, LSP and code formatting work flawlessly for me using Helix, and therefore should on any editor that implemented LSP

pr06lefs, (edited )

The intent of nix-env was to make it easier, but the effect was to push some of your system state into a shadowy ‘env’ realm that is not managed by your *nix files. Same with channels - its state that isn’t in your configuration.nix.

To me the whole point is to have all your state in some files you can check in to version control, and use to reproduce your system.

Agree it would be cool to have a way to edit nix files that would give you all the args to functions, code completion etc. You do get some of that with the nix repl. Would be nice to even have a GUI for selecting packages for those that don’t “do” text editing.

I’m using nixd for a nix language server, but haven’t seen a lot of benefit so far to be honest. I think part of the reason is nixpkgs isn’t pulled in until runtime, so most things are undefined as far as the lsp is concerned. Haven’t put a lot of time into it, there may be ways to make it more useful.

Nicbudd, to memes in Hey OpenAI

This is such a boomer meme

EveryMuffinIsNowEncrypted, to memes in Hey OpenAI
@EveryMuffinIsNowEncrypted@lemmy.blahaj.zone avatar

I know this probably wasn’t op who did this, but I have to ask: who the hell puts a watermark on a meme?

Omega_Haxors,

Timotainment’s watermark is a main character in his videos.

Aggravationstation,

Where? I can’t see it

BuboScandiacus,
@BuboScandiacus@mander.xyz avatar

On chad’s helmet

Churbleyimyam,

Ironically you could use a Stable Diffusion AI plugin to remove the watermark in GIMP.

EveryMuffinIsNowEncrypted,
@EveryMuffinIsNowEncrypted@lemmy.blahaj.zone avatar

Serious question (because I’m a dumbass): why is this ironic?

quo,

deleted_by_author

  • Loading...
  • EveryMuffinIsNowEncrypted,
    @EveryMuffinIsNowEncrypted@lemmy.blahaj.zone avatar

    Two questions:

    1. “wojack”?
    2. I would have never taken TRAQ_WEST_ to mean “Open AI”? Clearly I’m misunderstanding; can you explain?
    some_random_nick,

    Quite a few well known memers, not the peseants though

    EveryMuffinIsNowEncrypted,
    @EveryMuffinIsNowEncrypted@lemmy.blahaj.zone avatar

    I don’t even understand the benefit of it. It’s not like memeing is a job where you have to protect your intellectual property. Why even do it? Do they think so highly of themselves that they need to “protect” memes that they create? They’re randos on the Internet adding captions to images, not V/A professionals…

    It also goes against the longstanding spirit of Internet memes, that they are things to by definition be shared, not intellectual property to be bound.

    Ser_Salty,

    They want to drive traffic to their pages so they can make ad and sponsor money

    EveryMuffinIsNowEncrypted,
    @EveryMuffinIsNowEncrypted@lemmy.blahaj.zone avatar

    Assholes.

    AgentGrimstone,

    Wait til you see the head nodders and finger pointers on videos.

    Smokeydope,
    @Smokeydope@lemmy.world avatar

    You should take a few minutes to watch this video if you want to see how serious memers can get about ‘stealing memes’ kids with partially developed brains with too much internet access and free time obsess over nutty things

    masquenox, to memes in World attention

    Considering that western media is hysterically blaming Palestinians for Israeli atrocities now, I’d say it’s rather Israel’s (alleged) “plight” that’s getting the limelight - not Gaza.

    Ooops, to linuxmemes in They caught us
    @Ooops@kbin.social avatar

    That's defintiely the wrong title.

    No, it's not the user catching Linux in trying to pretend user friendliness witht the terminal.

    It's Linux catching the user in still hating it when he gets the wanted user friendliness, for the sole reason of being conditioned to hate the terminal.

    Honytawk,

    If you are able to use those buttons in the terminal, it wouldn’t be a terminal.

    turbowafflz,

    What? The person you’re replying to doesn’t have the best argument in the world so I’m not exactly siding with them, but also a lot of terminals very much do support mouse input. I’m not sure which all ones it is, but I know the gnome terminal does and I’m pretty sure Konsole does as well. Obviously not every program you run in the terminal is going to support it but off the top of my head I remember vim does as well as I’m pretty sure dialog

    ILikeBoobies,

    How do people use Windows without CLI?

    It’s way harder to GUI-only than Linux

    otp,

    Menus upon menus upon menus!

    janus2,
    @janus2@lemmy.zip avatar

    deluding yourself that having to edit registry values and write scripts all the time is definitely interfacing 100% graphically

    Mark132012,

    I want to point and click.

    RickyRigatoni,
    @RickyRigatoni@lemmy.ml avatar

    Father, I can not click the terminal.

    palordrolap,

    Just put MOUSE.SYS in your CONFIG.SYS or run MOUSE.EXE from your AUTOEXEC.BAT

    ... wait, where am I again?

    neonred,

    Don’t forget loadhigh (lh) and his friend DEVICEHIGH and check with mem the memory layout if anything more can be sqeezed into some unused block lying around…

    socsa,

    When did these hallucinations first start?

    metaStatic, to linuxmemes in They caught us

    I don't even see the symbols anymore

    RizzRustbolt, to memes in Hey OpenAI

    Yep, there will always be room for humans in the suffering industry.

    fraichu, to linux in Good Nix OS series: five articles for new users.

    Since I’m already a NixOS user, I thought to check out Series 4. One of the steps was “install flatpak”

    My disappointment is immeasurable and my day is ruined.

    null,

    My disappointment is immutable

    lemmy_user_838586, (edited )

    Ahh, itsfoss.com. they had some article on “being a supercharged Joplin user” or some nonsense and suggestion 3 or 4 was “Create a notebook”… Really being a power user when you’re utilizing the most basic functionality the app was created for…

    callyral,
    @callyral@pawb.social avatar

    “install flatpak”

    why would someone do that in NixOS? nix has a lot of packages and using flatpaks imperatively would lead to less reproducibility

    null, (edited )

    My usecase is that I want to build a rock-solid workstation laptop for my non-tech-savvy family member.

    I configure all the basics in .nix files, and then from there, they can install Flatpak from the software center, like they are used to doing.

    Then I can just do a rebuild switch when I see them, make sure it’s all working, and then trust that they probably won’t break the system in-between.

    Edit: to be clear, in my own config, if it’s not reproducible, I’m actively working to fix that.

    lambda,
    @lambda@programming.dev avatar

    I thought about doing that but updating nixos confuses me. Does nixos-rebuild switch pull new packages? To my understanding there is a file that saves all currently installed versions of packages and switch only adds new things but wouldn’t update packages.

    Like, if I want to update Google Chrome. Doing switch wouldn’t change anything if the config hasn’t changed, right?

    null, (edited )

    I believe that’s correct – if nothing has changed from your last generation, then the new generation will be identical. But if something has changed, it will do a bunch of duplicating and remapping symlinks in the Nix store to ensure that everything plays nicely together and that you can rollback to a previous generation if needed.

    So if you do a rebuild switch regularly, you will end up with gigs worth of old “copies” of things that aren’t being referenced in your current generation.

    That’s what nix-collect-garbage handles – once you know your current generation is working well, you collect the garbage and recover that space, at the expense of not being able to roll back.

    That’s why I think building a core system with NixOS and then having user software come from Flatpak is a nice combo for simple workstation that won’t update and bork itself, leaving my grandpa without a laptop until I can come take a look.

    Edit: To clarify, nixos-rebuild-switch won’t update your Flatpaks at all – just the Flatpak service

    lambda, (edited )
    @lambda@programming.dev avatar

    That makes a lot of sense. I can setup their computer with nixos and stuff that needs to be updated regularly (like a web browser) can be flatpak which should be more stable too.

    Then flatpak update would get them updated without rebuilding the whole OS.

    My grandparents have been rocking Linux Mint for a few years. I have managed Chrome through Flatpak since I discovered that was possible on Mint. I’ve been flirting with the idea of having NixOS instead so I don’t have to remember what I’ve configured in the past. I’m not 100% sure now though :-P

    null,

    Exactly right. Throw in Plymouth and set the bootloader timeout to 0 and you’ve got a noob-friendly workstation.

    lambda,
    @lambda@programming.dev avatar

    Plymouth?

    null, (edited )

    It’s a graphical boot screen.

    Just helps eliminate all the bootloader noise you see when booting up or powering off that make scare off less tech-savvy folks

    lambda,
    @lambda@programming.dev avatar

    Oh cool. My grandparents don’t have any idea that scrolling text isn’t normal on startup. Neat project though!

    Jilanico, to memes in World attention
    @Jilanico@lemmy.world avatar
    anon232, to memes in Hey OpenAI

    We can 3D print buildings so we’re almost there.

    NaibofTabr,

    Sort of… we can 3D print walls out of specific concrete blends that run nicely through an extended hose system that runs from the mud pump to the print nozzle. But, concrete has a limited time as mud before it starts to harden, so you can only print for so many hours before you have to stop and flush out the pump and hoses before it turns into rock, and the concrete mix can’t be too chunky (like including gravel) to flow through the system.

    Also, if you get all that right, then you can print walls… but not structural frames that would support a multistory building, or plumbing or electrical wiring or insulation or windows or roofs…

    We’re a long way from 3D printing a building wholesale.

    redcalcium, to linuxmemes in They caught us

    btop be like

    saltnotsugar, to memes in Fossil

    What if we kissed under the Early Miocene ocean? Just kidding………UNLESS???

    Omega_Haxors, to memes in World attention

    I’m starting to think that the american media just focuses on whatever war is most advantageous for the american empire at the time.

    Peaty,

    It’s whatever is new and will get attention.

    rgb3x3,

    Since always

    SwampYankee,

    Surely not!

    PolandIsAStateOfMind, to memes in I'm going to have the coolest dustrunner ever
    @PolandIsAStateOfMind@lemmy.ml avatar

    Nah, in case of apocalypse we are gonna be in the the 99% of skeletons in the dust.

    Which honestly would be preferable compared to the madness and misery of postapo movies.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #