• 0 Posts
  • 9 Comments
Joined 7 months ago
cake
Cake day: June 1st, 2024

help-circle

  • Maybe I’m doing something wrong or I’m not in the right places but I attend, lead projects and socialize at my college’s physics, robotics, and engineering clubs, but the likeminded people I do find either aren’t very social or aren’t compatible with eachother. Thats not to say I dont get a small group going every once and awhile its just the overall pattern is people graduate, drift off, and any new members… to put it kindly, dont exercise the same level of critical thinking.

    Maybe I’m just in the wrong places, college is a joke afterall, but I’m just curious if this is the kinda thing you ment by locally or not.




  • I stick around because (like some other people here) I want to live to see or even better help discovery the set of rules that underly the universe, see the stars even if just in photos, see what humanity is capable at its best, create anything that comes to mind, and learn everything I can. If the reason I dont want to live is the world around me (which it is) then I’d rather go out fighting, trying to change things rather than giving up outright (as a sidenote I wish someone created a place for people like this to meet and converse I see y’all scattered around the place but I can’t find a singular congregation spot). I mean I have what could either be classified as very well thought out delusions of grandeur or long term plans for a sort of immortality and if there’s the slimmest chance I can achieve that then I’m gonna shoot for it, and if I die trying then I get to die knowing I contributed to science in some hopefully big ways. So in summary I live to spite the world we live in and for the admittedly astronomically low chance I achieve my insane goal as the reasons for not living all relate to not having enough time and being restrained to a material world. Writing it out loud it’s quite convoluted.




  • I wish there were more resources I’m just tryina point you in a general right direction. I should a included more stuff though.

    1. Use Flakes You can think of flakes as declarative channels, with the added ability of using multiple channels at once and importing other flakes. I use both stable and unstable on my system and my flake has both. They also allow you to import other projects that use flakes a great example of this is base16.nix and my neovim config, try running nix run github:kyleraykbs/neovim and add the expirimental features flag it will complain at you about if you dont have flakes enabled.

    2. To clarify, I ment declaratively, cause ‘the nix way’ isnt pure if you use channels and such, I could a been more clear about that sorry.

    3. This is a complicated one… You aren’t reverse engineering it, its open source and in my opinion NixLang actually documents itself quite well, I haven’t had a problem with the readability of nixpkgs and there’s even a link to the source on search.nixos.org for any given option or package. On top of that NixOS is a rabbit hole of abstractions and at least personally I find it harder to build stuff for if I dont understand the layers of complexity that I’m standing on, reading the source is the only real way to do it as of current. But it is understandable that it might be hard to understand as a new user, and unfortunately my only suggestion is to read other peoples configs, that gave me a good idea of what to do and how to do it, still a pain of course but nix will hurt you a lot before it starts to get nice to use. Also once again vimjoyer is a wonderful resource for all of this.

    4. It makes it so all config is done in NixLang and therefore can take full advantage of nix, it also allows you to drop your home configs or parts of it on on any machine with just the config. Its just nixos but for your home, and as I said in my last comment the more nix tracks on your system the easier your life is.

    The learning curve just will be steep and as someone who got though its worth it.


  • Hello! Made a Lemmy account to comment on this, I’ve been a long time lurker. As someone who also went into Nix blind, its always gonna be a hard time a first, its a super different paradigm then anything else out there. Few recommendations,

    1. Use flakes, nix channel is legacy and is imperative meaning nix channel changes won’t be copied per system
    2. Try to purify everything, you may not succeed but if you try to nixify everything then you’ll get a much better understanding of the underlying systems of nix and of course your is.
    3. Fuck the wiki read the code and other peoples configs. The wiki and the docs have largely been misleading and the nixpkgs code is usually super easy to read, the source is also linked to on search.nixos.org
    4. Use home manager early. Working with NixOS gets better at a rate exponential to the amount NixOS has control over and your home environment is a huge part of that.
    5. Learn modules, all of nixpkgs is made of modules and your system should be as well, if you throw everything into one file you’ll have a really hard time generalizing later on, check out vimjoyers channel for this seriously he’s great.
    6. Understand that Nix, NixOS and NixLang all are huge upfront investments of time for a time save later on, its absolutely worth it in my opinion but you need to be aware its gonna be very difficult and you should focus on putting your energy towards the parts most important to you. If you have multiple systems you want nix to seamlessly deploy on focus on system relationships like roles, users, flake parts, etc.

    And full disclosure once you get over the learning curve it gets easier to write and understand nix, but you realize you did everything poorly and you’ll restart.