• 15 Posts
  • 334 Comments
Joined 1 year ago
cake
Cake day: June 26th, 2023

help-circle

  • Yea it’s definitely a jungle haha, it also seems they’re changing things up a bit with where the most recent docs might be hosted

    https://search.nixos.org/

    so, if you searched for vscode in that link, then click the “NixOS Configuration” button, you can see

      environment.systemPackages = [
        pkgs.vscode
      ];
    

    or if you’re using the with convention to factor out the pkgs object/contextual keyword(not sure if that’s the right name)

      environment.systemPackages = with pkgs; [
        vscode
      ];
    

    for zsh, just having this in your configuration.nix should work https://nixos.wiki/wiki/Command_Shell

    programs.zsh.enable = true;
    users.defaultUserShell = pkgs.zsh;
    

    Again, these values should be inserted after the function definition of your configuration.nix

    { config, pkgs, ...}:
    {
       # Things get inserted here typically
       imports = [ ./hardware-configuration.nix];
       environment.systemPackages = [pkgs.vscode];
    }
    

    for example.

    Something I’ve noticed from developing on nix, When the headaches of nix appear, the solution might be harder, but I usually end up with a better solution than what I was going for before. Some examples:

    • My resume is compiled in Latex. I tried the pdflatex package in nix but it gave rendering issues. Then the nix community recommended tectonic and i’m getting better compilation times, logging, clean up…

    • PIP is a garbage package manager, and it’s garbageness sometimes makes native python development a headache in nixos. However, using poetry2nix, not only could I define development environments, it was also ready for packaging on PIP

    Sometimes you might want to separate some parts of your configuration away from your global system config at /etc/nixos/configuration.nix. That’s nix-shell, nix-develop, nix-build, and flakes are for. I’m not a pro at flakes yet, but I think I got the gist, here’s an example of when I wish I could have used a flake:

    I use discord but discord itself is garbage. Vesktop is a better 3rd party client for discord. Unfortunately, I had to remove it from my configuration.nix the last few weeks because one of its dependencies wasn’t packaged right, causing my entire system to not build. If I had used a flake, I could have isolated that dependency from the rest of my build, while still tracking its integration with my system. I believe this could have allowed me to update the rest of my system, while still defining the errenous app as part of my system. Flakes are supposed to be more reproducible as well, since they require sha256 git commits, whereas other package managers only ask for a subjective version number

    There’s a lot to learn with nix but even if I don’t stick with it long term I feel like It’s making me a smarter software engineer since a declarative/functional paradigm tends to match the natural language more. It also is the most restrictive design paradigm, which means it’s brief but so simple it can be hard to understand as a consequence. Since it’s so restrictive, it’s also a subset of all other paradigms. You declare what you want, ideally, you don’t have to set anything up. I never had an easier time getting cuda drivers for ML Training setup than on NixOS because of this

    Something I enjoyed doing, was setting up my user profile to let me ssh in only with whitelisted ssh keys, as well as setting up a systemd script to handle some start up routines on my OS. I think that can be a gentle introduction to how you can configure other parts of your operating system. I’m going to try and set up a CI/CD/CT pipeline with it next I believe

    Edit: The next thing I need to do as well, is consolidate my user configs with the home manager functionality. I use a KVantum Theme engine on top of plasma, and while those apps are installed in my system, the configuration of which theme to automatically load should be integrated with the text config aspects of nixos. Currently, I “Imperatively” configured those by “Opening the app and clicking”, which will get erased/not be reproducible if I ever rebuild my nixos on a new computer

    Another funny thing with functional programming… sometimes the fix is as simple as

    sound.enable = true;
    

    Even though I had pipewire enabled as a service and everything, that one line needed to be there haha




  • I’m using NixOS partly as a dev machine, but mostly for consumer OS stuff like gaming, YouTube, social media…

    What are you trying to use it for? From the consumer perspective, I feel like modifying configuration.nix would be the majority of what I need. It’s like ninite if you’ve used that to setup a Windows machine, but it can be preloaded on your OS and you can configure everything, not just which programs are installed

    If you’re trying to setup dev environments, I think what gets weird is how many ways there are to do similar things, like nix develop, nix build, nix shell…




  • How is it insecure? Schnorr signatures and the txID system literally make it quantum resistant. Even if you cracked a transaction’s key, you’d only have access to already spent funds. Like a receipt instead of a debit card, with no certainty who has the money until they spend it.

    Oh, and in terms of computational waste, the fiat backed inflation based currency system we have now, has incentivized a world of endless growth which isn’t sustainable. Switching to an asset with finite supply like Bitcoin would remove those incentives. There’s other costs to using deflationary assets, but if you actually value the environment, switching to Bitcoin would economically inventivize a world where people are encouraged to save more instead of spend more


  • The recent crash was less volatile than previous crashes, and lasted half as long. There were also more factors than just the stable coin crash, there was also the FTX scandal, and silicon valley bank collapse which had ripple effects in the economy.

    Still though, the resulting crash was half as long and not as severe as previous crashes.

    I’m not saying you’re wrong about stable coins, but saying the entire crypto economy depends on that, while BlackRock has pushed the SEC to allow for Spot ETFs, is an exaggeration.

    I’m not even going to say this is a morally good thing. I hate BlackRock because they are the mainstream/institution. But that level of support shouldnt be taken lightly


  • This is an emotionally charged post, yet everyone you disagree with is secretly trying to influence everyone else? How the fuck are you going to compare people who like a type of software to literal Nazis? Anyone who relies on emotional arguments like that is clearly not a rationalist.

    How do you achieve communism without authoritarianism? This sub says they like decentralization, but if you decentralize based on computers, how do you stop adversaries from performing a Sybil attack? How do we establish command and control for a decentralized network, without letting authoritarians seize that command and control? How do you establish a decentralized identity system, without also establishing a decentralized system for data management and governance?

    Now, should a Blockchain be that? Maybe not, I’m not trying sell whatever to you. I get being annoyed by all the advertisers, but to go an extra step to say that the principles of cypherpunk is something to compare to Nazis, is just proof you care more about emotional arguments and setting narrative.



  • Ask anyone who talks shit about crypto for anything besides a meme, and you’ll still get a meme. That’s how their perception of it was established. They probably don’t know the difference between the internet and their web browser, let alone decentralized vs centralized, or all the many reasons why the economy has gone to shit the last few decades.

    But they do know memes! The same two memes that have been told since Bitcoin was priced under $10k





  • So, that comment section is heavily nested and hard to read on mobile

    I read through that article and to be honest, I think it’s trash. I’ve already mentioned why the BLS statistics are deceiving, but even the article doesn’t hide that the economy isn’t doing better, it’s just the US is doing better than all the other countries. It doesn’t emphasize that we’re all dropping in performance, but justifies our economy is good because we aren’t suffering as hard.

    But the rest of the world is suffering worse than we are, because they depend on our currency, and we have policy control over that. It was a decision to make ourselves relatively better off than our competition by making policy that harms them more.

    I’m not saying anything nice about Trump, and he’s a more extreme version of the following, but Bidens policy is still “America First with a finger up to the rest of the world if that’s what it takes”