Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)C
帖子
1
评论
151
加入于
2 yr. ago

  • OEM integration. i feel like there is a lot to like about Linux that most people who can will. but i think the thing that’s grown Linux a lot (other than geopolitical shifts) in recent time is SteamOS. not just because of Proton, but they’re literally selling a computer as an OEM with a 1st class linux OS. imagine if Dell and HP and Razer started doing the same

  • i absolutely cannot take this rant about “absurd” conventions seriously with that fuckin thorn character lol

  • yeah overall bandwidth was probably a consideration

  • sure!

    1. it wasn’t tough to get started. it generally reads like a normal Unix shell with some exceptions. i don’t think many Linux power users would have a hard time doing basic file system tasks or launching programs, etc. there are going to be some issues, like you can’t just paste bash commands in because && isn’t supported, multiline strings don’t require the \ character, and string escaping is totally different. those are intentional deviations that i personally agree with, but they take some getting used to. and then obviously stuff that is specific to nushell like working with tables.
    2. definitely the killer feature out of the box is manipulating, parsing, and reading structured data. the “aha” moment for me was when i needed to change a value over a thousand or so JSON objects and did it with a one liner. then i use it with some extra overlays to do stuff like connect to a k8s cluster like k8s connect (helm stage dev.0) which reads my YAML config and connects to the cluster specified in that file. or making a call to our internal package store to get the latest version by parsing the returned JSON.
    3. it works out of the box with your existing PATH (or Path if you’re nasty). you can just drop into it and it will have all the path stuff inherited just like if you launched zsh or bash. you’ll have to set that up if you want to use it as a system shell—like i do—, but otherwise it’s pretty seemless.

    you can check out my collection of scripts here: https://github.com/covercash2/dotfiles/tree/main/nuenv

    ETA: if you do have compatibility problems or need your old muscle memory to do something quick, it’s easy enough to use bash -c old_script.sh or just drop into a different shell

  • i’m a big nushell fan.

    i was once sitting where you are. when PowerShell was released on Linux i thought about switching and read the manual. i really liked some of the philosophy:

    • descriptive names for commands. cat and ls have canonical short names to save disk space on the systems they were created for. this is no longer a constraint and aliasing a longer command name is better than “git gud n00b” when it comes to discoverability.
    • structured data. “everything is a string” is great when programs play nice. it breaks apart when programs prefer human readable output or worse don’t provide structured output, like —format=json or whatever.
    • modern control flow semantics. yes, pipes are great, let’s keep those, but why do i have to rtfm every time i want to bang out a simple script with an if-else control flow?

    i looked around at a few solutions. xonsh uses Python. eshell is integrated into emacs and uses Elisp. i briefly tried to hack something together using Kotlin Script. and yeah, i tried PowerShell.

    i settled on nushell not just because it fulfilled the above requirements, but also:

    • simple data types. string, number, list, record, and table are about the only types you deal with.
    • wide support for structured data. JSON, YAML, TOML, CSV, etc have parsers built in. jq and other such tools are made irrelevant because you just load it into nushell query with a unified DSL using common syntax like select and where.

    honestly, these are the killer features. there are so many more. context aware autocomplete, modules and overlays, super easy custom completions, extension functions (one of my favorites is git remote open), cross platform (if you’re forced to use Windows), plugins, and i can contribute since i do Rust development for work.

    give PowerShell a shot, but i think nushell is the happy medium

  • pretty irrelevant to the point i was trying to make

  • i honestly don’t know what you’re advocating for

  • the perfect is the enemy of the good. the article is specifically about comparing Apple to companies like Nvidia and Google, who do all those things but worse, while advocating they go further in that direction.

  • i really don’t agree. i see that the Vision Pro was probably too ahead of its time in terms of cost and hardware capability, but their AI strategy, while making similar mistakes, is one i agree with. while Nvidia and Microsoft et al are jerking off their investors by growing AI in wildly different directions with limited use cases, Apple clearly has a vision for bringing AI to users in a way that is private and secure first and not based on data mining their customers or glazing B2B partners. they’re not promising to reduce the professional workforce. they’re not predicting the end of the world. they want to create use experiences.

    this is a similar take you might have had in 2010, wringing your hands at Apple’s demise because they didn’t jump on the virtual private cloud bandwagon with GCP, AWS, and Azure (not to mention all the failed attempts). comparing Apple to Nvidia and Google is ludicrous to me. compare Apple to Samsung or Qualcomm, and the picture looks different.

    my biggest disagreement is that if Tim Cook gets ousted for someone who will do the same AI deepthroating we’ve seen from the rest of the tech industry it would be a tragedy.

  • i’ve been maining Zellij for over a year now and haven’t looked back

  • yeah, but they did reverse course on ; and vs && to be more POSIX compatible, which is a decision i understand but don’t agree with

  • reject POSIX, embrace nushell

  • i mean, JSON is ugly and has its own problems, but it doesn’t have 6 legal values for boolean types. my opinion is that if you can’t do it in TOML you shouldn’t be doing it in config

    ETA: if you like this and it’s useful to you, i don’t want to discourage you. i’ve just been fighting with yaml config all week

  • loving yaml-based CI/CD

    you must be new at this or have some sort of Stockholm syndrome

  • yeah i don’t even know if this needs an apology. it’s almost as if Replit had previously recommended running their bot against production resources. honestly, if a company was like “oops we accidentally wiped your data cuz middle management wanted to LARP as engineering” that’s a blessing in disguise. i hope they lose all my data.

  • i must admit, as someone who has been using Linux (on Intel platforms for that matter) for over a decade i didn’t know this existed. that said, this seems like a huge misstep. maybe it wasn’t a widespread product, but having a reference implementation seems like a no brainer. maybe i’m missing something.

  • it’s fine as far as laptop keyboards go. i’ve pretty much given up on laptop keyboards being really satisfying. i use a mechanical when possible

  • it’s not worth it to me. the battery life is a huge feature, and it does feel like Asahi development has slowed. i have enough computers to tinker with. i bought my Macbook specifically to be an entry point into my other machines, i.e. from the airport or brewery or coffee shop.

    maybe when it makes sense to buy a new laptop i’ll find some time and motivation to contribute, but just using Asahi doesn’t really appeal to me.