Your Command Line, Oxidised

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 พ.ย. 2024

ความคิดเห็น • 725

  • @NoBoilerplate
    @NoBoilerplate  ปีที่แล้ว +281

    ERRATA
    - USE cargo-binstall to install these, it's SO FAST!
    - 1:14 "PIPELINS" instead of "PIPELINES". Spelling is hard.
    - This whole video was produced on Asahi Linux on an m1 mac mini. Yes (basically) everything works, yes it's incredible. You can test out with a safe dual-boot here asahilinux.org. Macbook M1 is nearly there, a few quality-of-life problems, but still ready for testing. I'LL DO A VIDEO ON IT GEEZ.
    - 6:08 My aarch64 PR is now merged github.com/MordechaiHadad/bob/pull/92
    - evcxr is no longer google/evcxr but evcxr/evcxr.
    - exa is no longer maintained, the fork is lib.rs/crates/eza

    • @Rudxain
      @Rudxain ปีที่แล้ว +9

      1:14 "PIPELINS" instead of "PIPELINES"

    • @gagaxueguzheng
      @gagaxueguzheng ปีที่แล้ว +36

      TH-cam allows me to translate this into English:
      ERRATUM
      all!()
      Thank you, TH-cam.

    • @scheimong
      @scheimong ปีที่แล้ว +5

      I was sharing some other Rust programs I use in the comments, and the comment was shadowbanned because TH-cam think's it's spam. Thank you, TH-cam.

    • @arcaneminded
      @arcaneminded ปีที่แล้ว +4

      5:40 Would recommend adding Helix as a replacement for nvim so long as you don't mind lack of plugins.
      Edit: just realised it's in the last slide. It's not possible to cargo install because you need the /runtime folder. It's available in most package managers.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +8

      @@arcaneminded It sure is, but I also had problems installing it from my package manager. I want to like Helix, but my goal is to cargo install my life! 😀

  • @ac130kz
    @ac130kz ปีที่แล้ว +344

    fish is getting a rewrite in Rust btw!
    I use these:
    1) prqlc - a cool new way to write database queries
    2) broot - crazy fast file navigation via shortcuts
    3) skim - a live grep fuzzy finder with piping available
    4) flamegraph - generate profiles, drawn with appropriate timings and bars
    5) py-spy - does the same, but you can attach to a Python process
    6) kickoff - a minimalistic program launcher for Sway window manager
    7) swayr - also a utility to add extra features to Sway
    8) cargo-nexttest - a better version of cargo test
    9) gitoxide - a git rewrite
    10) hyperfine - a benchmark utility

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +55

      oooooooh! Thank you for the LIST!

    • @desuburinga
      @desuburinga ปีที่แล้ว +1

      Damn that's awesome, thanks for sharing!

    • @prgnify
      @prgnify ปีที่แล้ว +3

      you just changed my life by introducing me to broot and to skim. Thank you!

    • @RenderingUser
      @RenderingUser ปีที่แล้ว +6

      Fish????
      Yessss
      Let's gooo
      Best shell gets a makeover
      🐠🦀

    • @theherk
      @theherk ปีที่แล้ว +9

      Also, git-delta, wezterm, shadowenv, navi, tokei, and xh. Also, lapce is coming along but I prefer helix.

  • @cas1652
    @cas1652 ปีที่แล้ว +204

    I used to be put off by the "rewrite it in rust" thing but after seeing the performance and ergonomics of these tools I get it now. The plattform independence is an aspect of Rust that's underrated in my opinion especially for someone like me who is on windows trying to get to a unix like workflow.
    On a personal note, I just wrote my first, very tiny, command line tool in rust, in neovim, and it's no small part because of your content that I started down this path. Thank you!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +41

      I'm so pleased for you! What a milestone! It's only up from here, you've got it :-D Come tell us about your cli tool on my discord!

  • @angeldude101
    @angeldude101 ปีที่แล้ว +46

    One that you might not know about is handlr, a Rust replacement for xdg-open. xdg-open happens to be written entirely in Bash, so naturally it's pretty slow despite how much it's used in the background. handlr does need a small wrapper since it requires a subcommand to perform xdg-open operations, but said wrapper is still faster than faster than running the whole thing in Bash. That said, there is a pull request to fix this issue and allow you to symlink xdg-open to it directly, bypassing any kind of wrapper script completely.
    Edit: I just realized that it hasn't actually been updated in almost 3 years. There is a fork that's is still active though.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +21

      Nice! Though don't immediately write off Rust projects that haven't been updated in a long time, if they have modest scope, they might not be abandoned, they might be DONE!
      (though if there's a fork, in this case it sounds like it's the former)

  • @erickmoya1401
    @erickmoya1401 ปีที่แล้ว +46

    For JS/TS developers, Volta is so cool for avoiding "it works on my local". And when working with more juniors devs who still have to get to understand versioning.

  • @KohuGaly
    @KohuGaly ปีที่แล้ว +42

    I fell in love with Rust for reasons that are precise opposite of what this video embodies. I have no interest in being pulled in the direction of lives-in-the-terminal codes-in-vim uses-arch-linux-btw side of the society. Of all the languages I tried, Rust is the only one that is user-friendly to a windows desktop simpleton like me. Opening the terminal and typing "cargo init" and "cargo build --release" is as far as you need to go to use Rust productively.
    When they promised "A language empowering everyone [...]" they really fucking meant it. Rust "handle" conforms to the hand, yet the blade does not budge. An unfortunately rare quality.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +14

      That's wonderful! Also, the windows crate is INCREDIBLE - all of the api is exposed crates.io/crates/windows

    • @MrJimmyD007
      @MrJimmyD007 ปีที่แล้ว

      This is the way

  • @redcrafterlppa303
    @redcrafterlppa303 ปีที่แล้ว +50

    If rust gets any more cross-platform libraries it will make java competition in the write once runs everywhere field. Which is impressive since it's java's whole identity.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +14

      Yeah! I feel like JNI breaks this promise too

    • @redcrafterlppa303
      @redcrafterlppa303 ปีที่แล้ว +4

      @@NoBoilerplate that's the reason the jni is actually getting replaced by an in java dynamic loading system. It still requires the native library present on systems but at least doesn't require a c-java conversion code like jni did. You can call foreign functions directly from java code after describing their signature with a java abstraction.

    • @gzoechi
      @gzoechi 10 หลายเดือนก่อน +1

      Without needing a runtime or classpath

  • @Ma1ne2
    @Ma1ne2 ปีที่แล้ว +8

    Great, now I gotta spend two weeks learning amazing new tools that are gonna make my life so much easier.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +4

      sorry/notsorry!

    • @Ma1ne2
      @Ma1ne2 ปีที่แล้ว +1

      @@NoBoilerplate I thought so :(

  • @lijunyu
    @lijunyu ปีที่แล้ว +34

    Hi Triss, can you do a video on rust best practices, how you start a projects. When to use map_err vs and_then, using impl Into as params etc... thanks love your videos.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +7

      That sounds like a great video Francis, I'll add it to my notes for my backlog!
      In the meantime, a great video by friend of the channel CTTM on this topic is th-cam.com/video/f82wn-1DPas/w-d-xo.html

  • @tolson-vkn
    @tolson-vkn ปีที่แล้ว +32

    Given the Asahi references I'd love to see a video covering that project's usage of rust in the graphics stack as a pillar of what oxidation can look like deep into hardware and software.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +8

      I'm excited to be a user of it, but I will leave the deep-dive to others who know more about it (asahi linda, right? www.youtube.com/@AsahiLina/featured)

  • @Rypervenche
    @Rypervenche ปีที่แล้ว +32

    Lapce is looking like a great VSCode replacement. I also use Helix as main editor, replacing neovim as it's finally stable enough for what I do.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +6

      I'm very interested in lapce, though I don't understand why I have to clone it to install it!
      Helix is good, but I wish it had vim bindings options.

    • @Rypervenche
      @Rypervenche ปีที่แล้ว +3

      @@NoBoilerplate It took me a bit to get used to it, but the types of advanced text manipulation that you can do with it without plugins is awesome. Also the LSP support being built-in is amazing.

    • @arjix8738
      @arjix8738 ปีที่แล้ว +1

      I tried lapce for a month, it was great but at some point it kept corrupting my files.
      Maybe it was not saving the entire buffer properly, and the annoying thing is that in lapce everything looked fine, but when you tried to compile the code (or even just view the files outside lapce) you would notice that entire blocks of code were missing.
      I stopped using lapce after that, it is still in alpha after all.
      I wouldn't recommend it for production projects as it corrupted a lot of code that was not committed to git...

    • @arjix8738
      @arjix8738 ปีที่แล้ว

      @Arjix I did not file a bug report, I know I should have done it, but I was super frustrated on how unreliable it had become at that point.

    • @-aexc-
      @-aexc- ปีที่แล้ว +3

      ​@@NoBoilerplate that would go against the point of helix, I don't see why they would add vim bindings

  • @anonymouskitten4715
    @anonymouskitten4715 14 วันที่ผ่านมา +1

    Yazi is a great tui file manager written in rust, and iamb is a matrix client written rust, however it’s still a little rough around the edges

  • @EvanBoldt
    @EvanBoldt ปีที่แล้ว +8

    COSMIC Desktop being made by PopOS is supposed to be in Rust and was announced to be released sometime this year. Launcher, Panel, Settings, Window manager (winit) all written in rust.

  • @hemanthkotagiri8865
    @hemanthkotagiri8865 ปีที่แล้ว +2

    If there’s any video that makes me ABSOLUTELY want to learn rust, this is it. I’m going full on run Saturdays Sundays now.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Wonderful! Here's how I recommend learning it: th-cam.com/video/2hXNd6x9sZs/w-d-xo.html

    • @hemanthkotagiri8865
      @hemanthkotagiri8865 ปีที่แล้ว

      @@NoBoilerplate I did watch that video and I am loving it already!

  • @tylerbloom4830
    @tylerbloom4830 ปีที่แล้ว +55

    Surprised not to see Alacritty on the list as an extensible and customizable terminal

    • @vladimir.semenov
      @vladimir.semenov ปีที่แล้ว +11

      The only 256-color terminal that runs smoothly on my old 8GB MacBook when I use nvim and tmux for multiple projects. Even iTerm makes laptop fans go supersonic and slows down other apps

    • @arcaneminded
      @arcaneminded ปีที่แล้ว +10

      Since the devs refused to add background images, I really don't see how anyone will convince me to switch to it over Konsole.

    • @klittlet
      @klittlet ปีที่แล้ว +3

      The only good modern terminal with a reasonable config file

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +31

      I forgot about terminal emulators! Ah well, time to do a part #2!
      What do you think of wezterm, I hear good things too?

    • @katech6020
      @katech6020 ปีที่แล้ว +7

      ​@@arcanemindedthere is wezterm which is also written in Rust

  • @oredaze
    @oredaze ปีที่แล้ว +6

    They missed an excellent opportunity to use "rat" for the cat replacement. Think about it: rust + cat = rat. Also when you use it, the file "rats out" it's contents. I am a bit salty about that xD

  • @AntonKravc
    @AntonKravc ปีที่แล้ว +208

    Shout out to the the Helix editor as an alternative to neovim.

    • @rez188
      @rez188 ปีที่แล้ว +21

      It's unfortunate that helix still isn't available for download directly through cargo

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +39

      This is exactly my problem, I can't be dealing with fussy installers!

    • @jg_yro5845
      @jg_yro5845 ปีที่แล้ว +7

      Was just about to mention this! Helix is awesome though it is still in its infancy.

    • @mwcz5190
      @mwcz5190 ปีที่แล้ว +25

      Helix looks truly excellent, but it's hard to change 20 years of vim muscle memory. It would be easier if helix had wholly different keymaps, but the overlap between the two somehow make it harder for me.

    • @dnullify100
      @dnullify100 ปีที่แล้ว +2

      ​@@mwcz5190 yeah, I think if you're strong in vim/nvim helix is a pain. I was only ever comfortable in vim Enough to make minor changes on the server. I'd otherwise edit locally and push new versions.
      Helix felt only marginally newer than when i started vscode. I definitely don't use helix like a vim pro uses vim, but it gives me a lot of the modal ergonomics with an approachability and ease of starting configuration that vscode had.

  • @linux666
    @linux666 ปีที่แล้ว +1

    1) lsd: I prefer it over exa because it's more compatible with ls. 'exa' have incompatible switches with the built-in ls (like -alrt).
    2) tokei is a source code analyzer and display stats.
    3) ferris-says : cowsay replacement
    4) starship : shell prompt
    5) oxipng : png optimizer
    6) procs : ps replacement
    7) hyperfine : benchmark tool
    8) hexyl : hex viewer command line

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      great list! you should submit it to this site, which is named after my video oxidizeyour.life

  • @nekoill
    @nekoill ปีที่แล้ว +3

    Half of my everyday utilities are already oxidized: I live in alacritty for the most part, use ripgrep for basic string searches, and even jump into Helix from time to time. It's still a bit raw for my liking, and I find it a bit bizarre that the hx devs decided on a half measure with regards to Vim keys, but still that's a bold decision and I can respect that. Maybe they ARE onto something, I've just grown SO accustomed to Vim keys ever since I switched to Linux that any deviation at all feels like a chore to deal with

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      Agreed - uniformity is better than perfection

    • @shastro6939
      @shastro6939 ปีที่แล้ว

      @@NoBoilerplate I suppose thats true. IG Helix is just its own paradigm. Honestly I've really liked it, the selection based workflow is completely brilliant, but it requires an open mind. That said its still missing some critical features imo, such as snippets. I tend to find that I haven't really lost my vim despite switching to helix, though I don't do a lot of remote editing.

  • @diktomat
    @diktomat ปีที่แล้ว +5

    If you don’t like Helix, maybe Zed or Lapce are more to your liking. Both are written in Rust, but both are GUI editors though..

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      The only criteria is they are cargo installable, Helix has so much faff I keep bouncing off it, though I think it's the most fully-featured.
      Thank you, I'll try those again!

    • @jg_yro5845
      @jg_yro5845 ปีที่แล้ว +3

      @@NoBoilerplate could elaborate more on your view of helix if able? Just curious your thoughts

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@jg_yro5845 sure thing - here's how to install helix, from the official docs:
      git clone github.com/helix-editor/helix
      cd helix
      cargo install --locked --path helix-term # RUSTUP SWITCHES VERSION HERE
      mkdir ~/.config/helix/
      ln -s $PWD/runtime ~/.config/helix/runtime
      hx --grammar fetch
      hx --grammar build
      And THEN I need to get into configuring lsp, which is not simple either!

    • @jg_yro5845
      @jg_yro5845 ปีที่แล้ว +1

      @@NoBoilerplate I can def understand your sentiment regarding this. I feel that there is definitely improvements that can be made though I do like the batteries included approach.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@qwesxfgh That's rust_analyzer isn't preconfigured is *insane* right? I REALLY WANT TO LIKE HELIX

  • @mosquitsch9281
    @mosquitsch9281 ปีที่แล้ว +5

    Instead of exa, I use lsd. Has nicer colors and better defaults for me. The rest has already been mentioned, hyperfine and wezterm

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      I'll give it a go! Thanks!
      BTW here's my exa ls alias
      alias ls = exa --time-style=long-iso --group-directories-first --icons --no-permissions --no-user -l

  • @TheOPtmal
    @TheOPtmal ปีที่แล้ว +13

    I rhink Nushell deserves its own video because of how powerful it is. The thing has got a dataframe implementation which is like a dozen times faster than Python!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +3

      Interesting! I never thought of it like that, I'll look into scripting with it

  • @strackx86
    @strackx86 ปีที่แล้ว +5

    Normally, when I listen this speech about a whole new set of tools, I'm defensive (like lots of Linux users). But I tested Zellij and meeeeen I'm sold to this trend 100%. I'm revising, open minded, every tool that was part of my day to day for years. Why not? Why staying static? The stability cannot become a comfort zone that doesn't allow improvement. Glad for this new set of tools!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      Look around in the comments for 1000 more great tools folks have suggested!

  • @mpogrzebski
    @mpogrzebski ปีที่แล้ว +17

    This is a magnificent list! Thanks!

  • @NoelTanner
    @NoelTanner ปีที่แล้ว +13

    These Rust Linux terminal tools are great! Exa, bat, starship, fd etc...they have become my defaults. I feel these tools do more than simply look neat or add additional functionality. They also serve as a gateway for me (and many more) to learn Rust.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      Totally agree!

    • @flyingsquirrel3271
      @flyingsquirrel3271 ปีที่แล้ว +3

      ​@@NoBoilerplate Speaking of fd, I think you missed that one in the video and I think it's absolutely essential. Apart from finding files, one frequent use case for me is converting many audio or image files at once using the -x option.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@flyingsquirrel3271 oh FUN!

  • @henzosabiq
    @henzosabiq ปีที่แล้ว +1

    I'm not exactly a terminal person but I find some of these would be useful, especially sccache and bacon. Thanks for the video!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      ncspot I have open all the time :-D

  • @TheStazis555
    @TheStazis555 7 หลายเดือนก่อน +3

    wait for the rust community to unite all of this into rust-emacs, which is kinda good idea, since Emacs' main problem is speed and elisp (not very popular language).

  • @zestynotions
    @zestynotions ปีที่แล้ว +6

    broot or skim maybe? Great list, thanks for sharing. Also zoxide is huge for me. I pipe that into skim for fast jumping around in folders

  • @zainhammad
    @zainhammad ปีที่แล้ว +1

    came back because of a tool i use daily and completely forgot was written in rust, paru! paru is a pacman wrapper/aur helper that makes managing my arch install much much easier

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Ooh, cool! Should I switch from yay?

    • @zainhammad
      @zainhammad ปีที่แล้ว +1

      @@NoBoilerplate iirc the lead dev of yay dedicates most of his time helping develop paru now, they both have the same features however i like paru’s bat integration ,PKGBUILD viewing/editing, and CLI better than yay
      also its written in rust so of course thats a selling point aswell ;)

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@zainhammad omg switching now, thank you!

  • @laundmo
    @laundmo ปีที่แล้ว +4

    du-dust looks really cool and it's much faster than ncdu

  • @Nicbudd
    @Nicbudd ปีที่แล้ว +9

    Someone needs to make a Linux distro with a package manager written in Rust that just calls cargo. That way we can have a Linux distro written entirely in Rust (minus the Linux kernel)

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +5

      honestly, that's my goal. My dotfiles would bootstrap `just` and then take it from there with `cargo`

  • @rand0mtv660
    @rand0mtv660 ปีที่แล้ว +9

    I'm not much of a terminal tinkerer, but I gotta say starship is amazing. I discovered it recently and installed it on few machines (work and personal) after a single day of using it. Customized it to my liking and I'm enjoying its performance and simplicity every day.
    One other Rust based tool that I love using is Volta. It's a JavaScript tool manager and it's amazing and fast. Since I'm a frontend developer, I work in Node ecosystem and I can use Volta to pin Node/npm/yarn/pnpm in a repo. Then when I cd into that repo, Volta will switch these tools to pinned versions I have in that repo. No more thinking about Node versions and potential mistakes while installing dependencies because I forgot to switch my Node version. I can just focus on installing npm dependencies and writing code after that. I know to some it might be silly, but I've worked in projects that range from Node 10 to Node 18 on a weekly basis and managing that with NVM was always a pain. Now Volta does it so good that I forget that it exists. It's a great tool that works and doesn't get in my way.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      That sounds great! If you'd like that for all programming languages try RTX, as shown in this video. It's a Rust version of asdf, which does the same thing. Whenever I switch into a project written in ANY programming language, I get the functionality you love :D

    • @rand0mtv660
      @rand0mtv660 ปีที่แล้ว +1

      @@NoBoilerplate thank you for the info, will definitely check it out. For some reason I thought RTX still required manual work for this, but I do admit I didn't try it. Just quickly looked at it and reached a wrong conclusion I guess.

  • @AqgvP07r-hq3vu
    @AqgvP07r-hq3vu 3 หลายเดือนก่อน

    This is the video I was looking for for about 5 years

  • @Sticksonic
    @Sticksonic ปีที่แล้ว +4

    You should really include links to the stuff you talked about in the description for easier access, but thanks for the great list of tools!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      Yeah, I should have, woops! Check my source code for all the `cargo install` lines, you get the package name there, or you could copy the long cargo install line on the last slide and get EVERYTHING :-D

  • @terencetuhinanshu
    @terencetuhinanshu ปีที่แล้ว +4

    Great list! I also recommend xh as an httpie alternative

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      oh NICE I use httpie all the time. Thanks!

    • @batisteo
      @batisteo ปีที่แล้ว

      I uses xh and… helix which is hx. It’s confusing but I love these tools!

  • @chrs-wltrs
    @chrs-wltrs ปีที่แล้ว +9

    This is my bi-weekly reminder to try out CLI-only programming

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +4

      You'll not miss vscode astronvim.github.io/

    • @chrs-wltrs
      @chrs-wltrs ปีที่แล้ว +2

      @@NoBoilerplate The codebase I'm working with is C#, so I've been using Jetbrains Rider. Do nvim or its counterparts have any integration or equivalent for ReSharper, or the utilities like building, going to code definitions, decompilers and the like?

    • @chrs-wltrs
      @chrs-wltrs ปีที่แล้ว +3

      I also often find that I do too much work between commits, and I like being able to selectively add line changes to a commit. I can't imagine doing that w/o a mouse, but I'd be very pleased to be proven wrong

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      @@chrs-wltrs I'm afraid I'm not sure, I see "csharpier, csharp-language-server, and omnisharp" in Astronvim's language server chooser? Try it out astronvim.github.io

    • @tempest_dawn
      @tempest_dawn ปีที่แล้ว

      @@chrs-wltrs i know lazygit lets you do partial staging rather easily - and astronvim comes out of the box with keybinds to open that up for you

  • @hacktor_92
    @hacktor_92 ปีที่แล้ว +6

    some tools written in rust that made me happy for being cargo installable:
    1. fnm - fast node manager
    2. tokei - counts the physical lines of code, logical lines of code, knows about comments, and language mixups i.e. rust inside markdown

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      Oh COOL I'll try out tokei, thank you! I think fnm has a subset of rtx/asdfs features, though?

    • @hacktor_92
      @hacktor_92 ปีที่แล้ว

      @@NoBoilerplate tbh, i have no idea. i found fnm when trying to use nvm (node version manager, written in/for bash) inside fish shell (which they don't support). so Schniz/fnm saved the day

  • @lolotronop
    @lolotronop ปีที่แล้ว +9

    Mprocs is amazing and getting a full rewrite... one day. I tried submitting an alternative layout option and the dev said he's rewriting the entire thing and my PR would be there in the new version by design. Keep an eye on that for sure!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      Fantastic!

    • @karigucio
      @karigucio ปีที่แล้ว

      a classic haha. I remember reporting a bug on aura, getting an answer that the bug will be no longer once its rewritten to rust. afaik its still not rewritten though xd

  • @zainhammad
    @zainhammad ปีที่แล้ว +2

    rnote is a great gui note taking/drawing/pen input tool, i use it almost daily for note taking at uni!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Ooh, it looks great! Try obsidian.md too, for typed notes, I make these videos using it!

    • @Gaivs
      @Gaivs ปีที่แล้ว +1

      Wow looks very interesting, do you know if it's possible to use latex?
      I've personally been using trillium notes, which I also can self-host, and is really great for organising and linking different notes. However it is pretty limited in terms of sharing with others and no handwriting notes

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@Gaivs obsidian.md is going to change your life. Yes latex, yes plugins, yes markdown native, yes git integration. It's WILDLY good!
      It's not open source, but it's written by two nice developers who release arm64 binaries, so I can't fault them! I pay for sync for convenience (the mobile app is LOVELY but of course git on mobile is non-trivial) and I don't mind giving them a small amount per month to make my life WONDERFUL! 🙂

  • @porky1118
    @porky1118 ปีที่แล้ว +1

    1:05 You had me at "fish" :)
    My favorite Linux TH-camr made fun of someone wanting fish as the default Linux shell and thinks, it's stupid, because it isn't posix compliant.

  • @Gaivs
    @Gaivs ปีที่แล้ว +1

    Another thing I can't see people mention is window manager, you have cool projects like penrose and leftwm. Still some way to go here concerning oxidising these projects, I think they still depend on some x11 libraries

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Ooh, very cool! I might try those, though I'm very happy with sway at the moment

  • @TheStickofWar
    @TheStickofWar ปีที่แล้ว +1

    The only thing is it is sad that it takes so much work to get something nice, and by that I mean someone like you has done all the work to go find out a way that works well.
    I can already see people in the comments talking about: VsCode, Neovim, Helix, Lapce. I get a tad overwhelmed and have to make executive decisions in what to pick up and what to stay away from, but it's nice to see the choices.
    I use Neovim for my development for around a year now, but there are painpoints I'm having that I will need time to solve, particularly in debugging Angular projects and having the editor look and feel the same across my three operating systems (Fedora Linux at work.. Windows 11 at home.. MacOS for my personal creational development that isn't in high resource usage category..)

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      Sounds like you could standardise on fedora 😜
      If "personal creational development" is music, check out bitwig.com, runs on Linux and is as powerful as Ableton Live

  • @caspera3193
    @caspera3193 ปีที่แล้ว +4

    Can't wait for the ecosystem to evolve further!

  • @ulcuber
    @ulcuber ปีที่แล้ว +3

    I have already used exa. But ll is aliased to 'ls -alhF --group-directories-first' for me enough.
    eee is aliased to 'exa -laFT --group-directories-first -L2' looks nice.
    Also using ripgrep as part of vim setup with fzf.
    Really like gitui. Missing part to migrate to terminal finally.

  • @psltmtir
    @psltmtir ปีที่แล้ว +3

    Tris, have you noticed that exa is deprecated? There's a revival called eza, though.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      Oh no! Thanks for letting me know 😊

  • @gavinvales8928
    @gavinvales8928 11 หลายเดือนก่อน +2

    You _need_ to make a part two to this video. Have you heard about Typst?

    • @NoBoilerplate
      @NoBoilerplate  11 หลายเดือนก่อน

      I sure do, you're not the first person to tell me to update the list!
      Typst looks interesting, perhaps useful for publishers who don't want to use latex, but I don't see a benefit for my modest use, because I can combine markdown with latex snippets using Obsidian www.makeuseof.com/write-mathematical-notation-obsidian/

  • @peterzimmermann55
    @peterzimmermann55 ปีที่แล้ว +3

    Great video! I don’t write any rust but it’s great to see the language grow and how community driven it is. Keep up the great videos!

  • @PabloAndresDealbera
    @PabloAndresDealbera ปีที่แล้ว +3

    9:05 you need to start learning Nix asap.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      I know! Every year or two I dip my toe into nixos and home-manger, and I get a little further each time. next year maybe!

  • @micmine
    @micmine ปีที่แล้ว +4

    If i need a simple smal tool i choose rust over a bash or nu script. Because if i need some dependencies i have them at my fingertips. For example i wanted to use this script also on windows. In the past i would have used fzf but that on windows sucks. Skim is written in rust and can also be used as a library. Problem solved.

  • @Rennu_the_linux_guy
    @Rennu_the_linux_guy ปีที่แล้ว +2

    on Garuda, cat is replaced with bat by default (and the default terminal is alacritty); I was always confused why using cat on Garuda outputted syntax highlighting and now I know why lol

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      That's so fun! Manjaro too, I think?

  • @ShinigamiZone
    @ShinigamiZone ปีที่แล้ว +4

    It feels like nearly all these tools are for DevOps / experienced terminal users
    Would like to see a list that affects non so technical users except of Tauri

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      The supreme advantage of terminal apps are their featherweight cpu/mem requirements. I'd encourage anyone to start with ncspot, a spotify client, and branch out from there - there's a whole world available!

  • @RobCurrent
    @RobCurrent 7 หลายเดือนก่อน

    would love to see this and Everything Everywhere All At Once as a "noboilerplateos" flake like zaneyos does, with an installation video. If I can get anything close to either running this weekend, I'd be trilled. Great stuff, inspiring. Sadly, I'm still hunting around in the RTFM section of the book store.

  • @inkton
    @inkton ปีที่แล้ว +2

    Warp shell (Written in Rust)
    Helix editor (Written in Rust)

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      Nice combo! Neither work for my requirement of one-line cargo installable, helix has quite a bit of post-install setup, and warp (btw it's a terminal emulator not a shell) is macos only, which doesn't bode well for my ability to cargo-install it :-D

  • @MasterHigure
    @MasterHigure ปีที่แล้ว

    With a video title like that, I think there is something you ought to know: The Rust language doesn't take its name from iron oxide (at least not directly), it takes its name from a mushroom. So it's not about oxidizing, it's about fungifying.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Heh, yeah I know, but wordplay is fun!

  • @stanrock8015
    @stanrock8015 ปีที่แล้ว +1

    Wow. Hadn’t heard of most of these and I’m a 30 plus year Linux user. I’ll definitely check these out

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      There are so many great tools coming out of the Rust community - and I think it's because the kind of developer who would not have dared write systems tools, and might have stuck with web/app development can now easily write them!

  • @ribz4951
    @ribz4951 ปีที่แล้ว +6

    Wasn’t sure what to expect when clicking on the video but this was so informative and interesting (as usual). Thanks!

  • @mananabanana
    @mananabanana ปีที่แล้ว +9

    I loved Helix's editing philosophy of selection-before-action but the project is still kinda at an alpha, or at best beta, level of maturity and i couldn't persist with it for daily use.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      It's more logical, for sure, but the REST of my world has vim bindings!

    • @Flackon
      @Flackon ปีที่แล้ว +1

      same. Also, offering plugin support could make it potentially the best terminal editor

  • @0xSLN
    @0xSLN ปีที่แล้ว +1

    Great suggestions! Please give us updates on the oxidation process to help the rust-curious among us.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +6

      Honestly I have enough material for a part 2!

    • @0xSLN
      @0xSLN ปีที่แล้ว +1

      @@DooMWhite u got it working on windows? Thought it was Linux only last time I checked. 🤞🙏

    • @DooMWhite
      @DooMWhite ปีที่แล้ว

      @@0xSLN I didn't, I tried it just now, no luck unfortunately.

  • @sylvanfranklin6904
    @sylvanfranklin6904 ปีที่แล้ว +5

    Bro, this is just the kind of thing that I love. Great work, would love to see more videos in the same vein (for instance how you use linux, what kind of keyboard you use etc).I just got an m2 mac, and would love to see your configs for developing in greater detail!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +4

      me too! Just got the cheapest second-hand mac mini m1 I could find and installed asahilinux.org
      Been my primary machine for a week - EVERYTHING WORKS!
      I use the best keyboard I've ever used, www.zsa.io/moonlander/
      (and also the Launchkey 49 for *music* keyboard!)

    • @woofiewill
      @woofiewill ปีที่แล้ว +1

      @@NoBoilerplate It always a little funny that it seems very similar things appeal to you and I. Using Obsidian, the interest in Rust, WASM, and don't tell me PWAs as well? And now we have the Moonlander keyboard in common.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      @@woofiewill Nice! Excellent taste!

  • @kenneth_romero
    @kenneth_romero ปีที่แล้ว +1

    Zellij has been such a game changer for me. I was about to switch over to Emacs since Tmux felt so clunky to me.

  • @0xDEAD_Inside
    @0xDEAD_Inside ปีที่แล้ว +3

    "Built by Google! The champions of 'the right hand doesn't know what the left hand is doing' competition"
    😂😂😂 Apt!

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      I have run out of patience with that company :eyeroll:

  • @s1ck23
    @s1ck23 ปีที่แล้ว +3

    Thanks for sharing! I use a large subset of these tools, but sccache, rtx and wiki-tui were new to me. And now I want to learn more about Pomodoro :D Maybe you can explain at some point why you think Helix is "WEIRD". I use it as main editor and I really like it besides a few things here and there.
    Again, thx for the video :)

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      My two problems with helix are: 1. You can't `cargo install helix` there's a somewhat onerous setup, and 2. Reversed vim bindings. I get why they're better, but every app I use has vim bindings!

    • @s1ck23
      @s1ck23 ปีที่แล้ว +1

      @@NoBoilerplate thanks for the reply. 2) is actually a valid reason … but it’s written in Rust 😅 I implemented the : feature very early and it’s just so nice if it’s the language you know :)

  • @porky1118
    @porky1118 ปีที่แล้ว +3

    How did I miss this when it came out? I already activated the bell.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +3

      TH-cam want to be in control of what you watch, not you. :-/

  • @pcfreak1992
    @pcfreak1992 ปีที่แล้ว +2

    Sometimes I need to have the precise date and time and might be not sure if my system's time is correct. In that case you might browse to a website that talks to an NTP server, but you can do just that with `rsdate`. It's basically like `date` but uses an NTP server instead of your system's clock.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      oh that's GREAT, as an amateur radio operator who occasionally works satellites, I'm gonna file this one away. Thank you!

  • @ARitzCracker
    @ARitzCracker ปีที่แล้ว +4

    I really appreciate this video, in fact, I have some of these already installed! Though sometimes I still use windows for some things and unfortunately exa cannot be installed on windows, as it depends on the "users" crate which expects a unix-like environment. (std::os::unix to exist)

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Ah, sorry about that. Does it work in wsl?

    • @polares8187
      @polares8187 ปีที่แล้ว +2

      @@NoBoilerplate yes it does

  • @EliteTester
    @EliteTester ปีที่แล้ว +2

    I have a love hate relationship with the whole "rewrite it in rust thing", but even I already use most of these and I didn't even know bob was written in rust!.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      I've thought about this a lot, and I think the reason it's so tempting to rewrite stuff in rust is that it's so easy to make things better. Imagine you've written a python wrapper around a c library. Sure it's unpleasant but you eventually get it working and what else are you going to do? Cant rewrite it in python!

  • @vishnuc2682
    @vishnuc2682 ปีที่แล้ว +2

    I’d also like to recommend fd, navi, difftastic, hexyl, xsv, alacritty, websocat, hurl, xh, dog, hyperfine, zenith.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      gonna take all these and put them in the bag, thank you!

  • @farzadmf
    @farzadmf ปีที่แล้ว +20

    It would have been nice if the links for the tools were included in the description

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +16

      Apologies, if it helps my sourcecode for the videos is in markdown here github.com/0atman/noboilerplate

    • @farzadmf
      @farzadmf ปีที่แล้ว +2

      Thank you for the link, and could you also please let me know which script is for this video?

    • @chonkusdonkus
      @chonkusdonkus ปีที่แล้ว +3

      @@farzadmf since this is the newest video, it's naturally the one with the highest number, but I do agree that it would be helpful if the title of the video and the name of the script file matched. It's called 20-rust-userland..

    • @farzadmf
      @farzadmf ปีที่แล้ว +1

      @@chonkusdonkus Thank you

  • @daniyalahmad1820
    @daniyalahmad1820 ปีที่แล้ว +1

    There's this package called "binstall" which speeds up installation by a hundred times as it prevents downloading and building all the dependencies and simply downloads the binary of the package that you need,

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      yes, I've discovered this too! I've updated the pinned comment to suggest using this, thanks!

    • @daniyalahmad1820
      @daniyalahmad1820 ปีที่แล้ว +1

      @@NoBoilerplate I installed Rust, set up nushell and installed all these tools after watching this. Thanks for the video. Imma learn Rust.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      @@daniyalahmad1820 YES! here's my video on how to learn Rust btw th-cam.com/video/2hXNd6x9sZs/w-d-xo.html

    • @daniyalahmad1820
      @daniyalahmad1820 ปีที่แล้ว

      @@NoBoilerplate Hadn't seen that. Thanks a bunch.

  • @YonatanAvhar
    @YonatanAvhar ปีที่แล้ว +9

    I was just about to write a comment about Helix when I saw you mentioned it in the last slide. What's weird about it, just the fact that the editing model is different to vim or is there something else?

    • @vishnuc2682
      @vishnuc2682 ปีที่แล้ว

      It has an insanely fast, global search and file fuzzy finder that’s way way more performant than telescope.nvim. The LSP and configuration styles are much simpler and much more compact than neovim. At the same time it comes with a lot of same defaults and champions in huge monorepos where neovim sadly chokes.

    • @potatoes_fall
      @potatoes_fall ปีที่แล้ว +2

      vim users find it weird in my experience. It's also not suuuuper mature

    • @Kiaulen
      @Kiaulen ปีที่แล้ว +1

      It's really hard to untrain the vim Verb-Noun command structure, not least because you can think about it in plain English. Change a word flows in your head much better than a word, change.
      And like Martin said, it's very young. Promising maybe, but very young.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +2

      It really bugs me that I can't cargo install it. I move between installs and machines a LOT so I need a simple install, not something where I need to run external commands to compile syntaxes etc.
      Shame, as it seems to be the most mature rust editor!

  • @axdrw
    @axdrw ปีที่แล้ว +1

    Thanks for the list! Try bottom, oxidised htop

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      oh NICE! OK added that to my dotfiles, thank you!

  • @xvrqt
    @xvrqt 9 หลายเดือนก่อน

    Made a Nix-Flake with all these a lil bit ago :D oxidized my tool chain

  • @ramtinabadi
    @ramtinabadi ปีที่แล้ว +10

    The most accurate description of Google as an organisation

  • @legorockfan9
    @legorockfan9 ปีที่แล้ว +2

    HELIX! Its a modal editor like vim but written in Rust. It doesn't have plugin support yet, but keep an eye on it...

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Yeah! I keep trying it out, but it's WEIRD to install (can't just cargo install it). I'll keep trying!

    • @himitsumonban
      @himitsumonban ปีที่แล้ว +1

      @@NoBoilerplate clone the Helix repo and run `cargo install --locked --profile opt --path=helix-term`

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@himitsumonban Sadly, there's more steps than that! then getting lsp to work is more work!

  • @Rudxain
    @Rudxain ปีที่แล้ว +3

    2:47 *"we'll C"*
    Nice pun

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      that's... actually better than what I wrote XD

    • @Rudxain
      @Rudxain ปีที่แล้ว

      ​@@NoBoilerplatelmao

  • @matthewrease2376
    @matthewrease2376 9 หลายเดือนก่อน

    Okay but, I like the bash/zsh way of doing things. It's familiar, simple, and is the default on any decent OS, so you know it will always be there for you.
    To have to learn a new shell paradigm, that is not readily available, is a big ask.

  • @petarvujovic
    @petarvujovic ปีที่แล้ว +2

    Great video! I love and use some of these tools, but the new ones I heard here are gems. Thanks for always reaffirming my love for Rust

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      I've learned about another 20+ in the comments, it's so fun!

  • @nanahiiragi723
    @nanahiiragi723 ปีที่แล้ว +3

    zoxide (better cd), fzf (fuzzy find), joshuto (ranger clone)

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      OOOH thank you, joshuto is COOL!

    • @woofiewill
      @woofiewill ปีที่แล้ว

      The "z" command is awesome. I use it all the time. I also use Ranger but have been wishing for something a little more modern. Will have to check out Joshuto. Thanks for sharing

  • @sumaersinghgrewal6257
    @sumaersinghgrewal6257 ปีที่แล้ว +1

    Hopefully this doesn't get lost in the comments, but after seeing a video like this, I can't help but feel intimidated. I just felt some semblance of familiarity with the terminal, and these tools, despite being vastly superior and efficient, turn everything I know on its head. Any tips to gradually 'oxidize'?

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      You can absolutely take it slow, this is quite a fast video!
      You don't need to change your shell or terminal or anything like that.
      Install just one program from this list that you think is interesting, and go from there! :-)

    • @sumaersinghgrewal6257
      @sumaersinghgrewal6257 ปีที่แล้ว

      @@NoBoilerplate Thank you so much for your quick help!

  • @brendanhansknecht4650
    @brendanhansknecht4650 ปีที่แล้ว +1

    Helix editor is pretty awesome

  • @TheoParis
    @TheoParis ปีที่แล้ว +1

    Nice video. I might try and create a rust based linux distribution for fun with all of these🤔
    The only problem is a GUI which requires mesa which requires C/C++. If I really wanted to I could write something in rust using just drm-rs but It’d take a lot of work.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      I believe you could write everything you need in no-std rust, interacting with the system directly? That would be fun!

  • @tommythorn
    @tommythorn ปีที่แล้ว +2

    Many of these had surprising troubles installing on my diverse set of platforms, but the standout was ncspot which doesn't appear to install most places, like macOS/x86 due to the use of long abandoned rustc-serialize

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      oh WOW really? it needs x64? Huh! File a bug!

    • @DooMWhite
      @DooMWhite ปีที่แล้ว +1

      I had trouble installing zellij and rtx-cli in windows.

    • @tommythorn
      @tommythorn ปีที่แล้ว +2

      @@NoBoilerplate ??? I wrote macos/x64 as a contrast to macos/Arm64. Apple hasn’t supported 32-bit in a long time.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@tommythorn Oh interesting. Are you sure it uses rustc-serialize? I can't see that, and note that it uses the excellent Serde crates.io/crates/ncspot/0.12.0/dependencies

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      @@DooMWhite Aye, looks like WSL is the way forward for windows users, it's really great I hear!

  • @DannoHung
    @DannoHung ปีที่แล้ว +1

    I really like fd as a find replacement over rg.

  • @YamiStrix
    @YamiStrix ปีที่แล้ว +1

    Theres also Leftwm, a window manager written in rust

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      oh cool! I'd not seen that. VERY tempting to oxidise my whole DE too!

  • @THEMithrandir09
    @THEMithrandir09 ปีที่แล้ว +1

    People update your software! There's cargo install-update which is a plugin to cargo.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      `cargo install X` will actually update X if there's updates, if it's already installed. My recommendation is to have a LONG `cargo install X Y Z` line with all your stuff in, then re-run it whenever you like.
      I think you're talking about crates.io/crates/cargo-update which I didn't like.

  • @RenderingUser
    @RenderingUser ปีที่แล้ว +3

    7:55
    lmao
    ive been trying commands like cargo info or cargo show to see if i could see packages
    didnt know i had to install cargo info lmao

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      hehe! Used to be the same for `cargo add` but it was so useful they rolled it into the main distro, I bet they'll do that for `info`

    • @RenderingUser
      @RenderingUser ปีที่แล้ว +1

      @@NoBoilerplate oh yea thats true
      hopefully it does happen

  • @johnbrooks7350
    @johnbrooks7350 ปีที่แล้ว +1

    Maybe I'm doing something wrong but I tested it out and nu shell's structured capabilities don't work with exa. I do like the --header option with exa but nu shell basically does the same thing

  • @THEMithrandir09
    @THEMithrandir09 ปีที่แล้ว +1

    Is sccache really worth it? what's your 'sccache --show-stats' output? For me it saves 0s on average (but also only costs 0.0.1s for writing so it's not like it slows anything down either).

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      oh interesting! I've tested compiling ripgrep with it off, which is a 20-21s compile, then with sccache the first time it's 21s, as you would expect, but the SECOND compile it's 7.9s.
      I think it comes into its own when used on a CI machine, across multiple projects. The number of projects that use serde stable, say, must be loads - and that's a HUGE dependency to compile!

  • @KpFriendly
    @KpFriendly ปีที่แล้ว +8

    i'm surprised nobody has mentioned cargo install atuin, very shell history that works with zsh, bash, and fish

  • @Jplaysterraria
    @Jplaysterraria ปีที่แล้ว +5

    I use `fd` and `sk` (skim) extensively, mostly through a shell function `fcd` (find and cd) defined as `fcd() { cd "$(fd --type d --max-depth 1 "$1" | sk)" }`.
    You use it like `fcd ~/Documents` andi t gives you a fuzzy finder (sk) over all the subdirectories of `~/Documents`, I have an alias `fcdp` which allows me to fuzzy find over all of my projects, highly recommended.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      oh nice! similar to fzf?

    • @Jplaysterraria
      @Jplaysterraria ปีที่แล้ว

      @@NoBoilerplate yes, but oxidized :)

    • @Jplaysterraria
      @Jplaysterraria ปีที่แล้ว

      sd replaces sed in simple cases (sd 'a' 'b' == sed s/a/b/g) but it doesn't have the expresive power from sed sadly, so I haven't replaced it. I also tried helix, but I gave up as I couldn't get hover actions working.

  • @Yowax
    @Yowax ปีที่แล้ว +1

    Wake up honey new No Boilerplate rust video

  • @hotfishdev
    @hotfishdev ปีที่แล้ว +3

    Unfortunately, I’ve found that some of these crates are problematic to install on Windows. There’s a lot of linking to native code which means that you’ll have to have the right version of Visual Studio set up along with properly configured cmake. And even then not all of these compile.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      Yes, that's a shame. WSL2 is FANTASTIC however, a single command installs a full ubuntu subsystem, then everything works perfectly!

    • @hotfishdev
      @hotfishdev ปีที่แล้ว

      @@NoBoilerplate Definitely is! I was able to install most of these under WSL2 without much issue. The one missing link for me is being able to use WSL2 tooling for game dev. Doing the Roguelike in Rust book (it’s pretty great!), but WSL2 doesn’t do that very well.

  • @clemenswehrmann9133
    @clemenswehrmann9133 ปีที่แล้ว +3

    Haven’t seen a plug for topgrade yet. While some will want to be more deliberate with reviewing their updates, I’m super happy to have a one-button tool that does most everything.

  • @bluesquare23
    @bluesquare23 ปีที่แล้ว +1

    As someone who daily drives bash, python, and perl your modern fancy rust ecosystem has my eyebrows raised.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      I was a python developer for 15 years before I discovered rust - I'm never going back! My videos explain Rust in terms of dynamic languages, I'd love to know what you think: th-cam.com/video/oY0XwMOSzq4/w-d-xo.html

  • @TECHN01200
    @TECHN01200 ปีที่แล้ว +3

    Most of the apps, I do not care for, the cache needs to exist in cargo by default because builds in rust are slow af otherwise.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      Rust's compile times are slower than many other languages, but they're doing ENORMOUS WORK for us.
      Let's look at a case study I really like: Go. Ken Thompson and co have done such a good job and perfecting what they set out to do, which is (according to their blog posts) "What would we do differently if we designed C++ today", and I don't mean that as an insult. It's nothing short of genius.
      But I want more.
      The type system is solid, but not rich enough. Have you tried an ML language? If not, it's a TRIP. I learned Haskell in 2010 and it really opened my eyes to what a rich type system can do.
      Then in 2013 I learned Clojure, and FINALLY I found a lisp that seemed normal, not full of odd 1950s ideas (sorry Common Lisp). I even worked at a startup bank for 2 years writing it! What luck.
      What makes me excited about Rust is that it's taken much of Haskell's type system, coupled it with Lisp's Macro system for complete compile-time control, and then cleverly packaged it in a language that looks, at first glance, like C. Or something C-like.
      Now, the slowness of compiling you're referring to, I agree can trip up some newbies. They might be a dealbreaker to you, and I respect that. They were a dealbreaker for me too, when I first started! I had a mentor who kept me learning, however, and I trusted their judgement and experience.
      After a number of weeks, I realised that many of the benefits of Rust come from this extra compilation step, an example:
      Rust annotates how long variables can live for using a very short syntax.

    • @TECHN01200
      @TECHN01200 ปีที่แล้ว

      @@NoBoilerplate I agree it does a ton of work for you, however, I don't see why not to have a cache. I'm not saying throw out all the stuff that makes rust rust, what I am saying is there is clearly a tool that will help people not want to abandon rust and it fits with the basic job of the compiler, in part, not doing the same work over again. I am aware that the compiler does a lot for you, remember, I watch your videos and have done so multiple times.
      I had another moment like this with constant expressions with const generics, though, at least with this one, I understand why it isn't in by default, because this is in the nightly build. Generally, I am a proponent for what works best for you. Currently, for me, that is still C++, in spite of only picking it up a few months ago and ripping my hair out over build systems, however, once I got over that hump, amazing things introduced themselves to me: const generics in the first place at all (I come from the Java and C# side of things), values larger than 64 bits (including floating point values), everything is just a byte array if you stare at it in just the right way and many, many more awesome things. Rust is something along the lines of 16/17 years old now and seems just as awkward sometimes.
      Don't get me wrong, there are things I like about Rust too: memory safety, pseudo-automatic heap management, cross compiling without the pain, one codebase for everything, having a package manager by default, no nulls (I have convinced my colleagues to make anything that can be null signposted and an error otherwise), the enums that otherwise, don't exist, the match statement being more normalized than the switch statement in other languages (again, making an effort). All these things I like and yet, don't exist in C++ (I don't use smart pointers, I know they exist, I prefer managing that stuff myself).
      In spite of the pain points, I want to see how this fits in the greater ecosystem. Just like anything else, I want to see it succeed, and just like everything else, I see a place for critics, critics point out the problems and make things better. In the same sense that rust devs are critics of everyone else, rust too needs its critics.
      I grabbed sccache the next moment I was at my own computer because I knew I needed it with what it does and rust is now much better than what it was for me. Most of the rest of the apps, I don't care what they are written in, so long as it works, and not every app is for everyone. If software made with rust truly is the best, then I am more likely to use it by virtue of it being good, not by virtue of it being rewritten in Rust. I just swapped from yay to paru as my AUR helper without giving a crap about what language it was written in and low and behold, paru is written in rust, yay is written in go.
      The other part that might help is a rust-book lite (programmer?) edition for people who have programmed before. Don't explain to me what every little type is or how an if statement or a for statement works if it works no differentlly. With the integers and floats, give me the semantics of it and I can then figure it out (i.e. letter being the type of value, the number being the number of bytes for that value). Explain the move semantics and borrowing, but not the concept of a variable, otherwise, it feels patronizing and condescending to someone who has programmed for many years already.
      As for the other part of the comment, it is mostly design decisions, I made it with the intent of highlighting sccache, not take down the rest. I tried out exa and aliased it to ls, everything else, I don't care for the boxes and unicode tui stuff.

  • @kitgxrl
    @kitgxrl ปีที่แล้ว +2

    fd is an amazing alternative for find

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      is that something I can cargo install?

  • @yankee-in-london
    @yankee-in-london ปีที่แล้ว +3

    very helpful thanks ... I dipped into Nu shell a few years back but fell back to zsh but I have been considering going back. Also been a huge fan of bat (but not real bats). Many of the others I was unaware of an look forward to distracting myself by playing with them.

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว +1

      I'm interested to learn Nu as a language, too. A rusty scripting language I can get behind!

  • @mikopiko
    @mikopiko ปีที่แล้ว +1

    Is YJIT considered oxidised? If so, can we say Ruby oxidised a bit of itself?

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      A lot of the backend of npm is written in Rust too ;-)

  • @oredaze
    @oredaze ปีที่แล้ว +640

    They missed an excellent opportunity to use "rat" for the cat replacement. Think about it: rust + cat = rat. Also when you use it, the file "rats out" it's contents. I am a bit salty about that xD

    • @ajbrady4357
      @ajbrady4357 ปีที่แล้ว +57

      alias rat=‘bat’

    • @oredaze
      @oredaze ปีที่แล้ว +74

      @@ajbrady4357 did that already, but it's not the same

    • @abhishek.rathore
      @abhishek.rathore ปีที่แล้ว +23

      I agree. It was a missed opportunity.

    • @blahdelablah
      @blahdelablah ปีที่แล้ว

      @@oredaze How is it not the same?

    • @Silicon_0014
      @Silicon_0014 ปีที่แล้ว +16

      ​@@blahdelablah it’s. just. not. the. same.

  • @jsonkody
    @jsonkody ปีที่แล้ว +1

    You have probably quite picky condenser microphone do you?
    There is unpleasant echo in the record.
    I battle with it too.
    Something like ( How To Make Your Own Acoustic Panels - In The Mix ) could help

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      Thank you for the tip! You have good ears, this is the first recording in my new studio, and it's a bit echoey! Is that the DIY Perks video? I have a plan to do exactly this :-)

    • @jsonkody
      @jsonkody ปีที่แล้ว +1

      @@NoBoilerplate nah .. I just bought awesome reproductors :D Now I hear everything .. and it hurts xD
      (eris 4.5 bt)
      PS: I've just tried some cheap jbl earbuds and it sound nice, no echo .. but with those Eris it literally hurt my ears

    • @NoBoilerplate
      @NoBoilerplate  ปีที่แล้ว

      @@jsonkody Every single video I hope to improve my audio more and more! This was my first video running through a click/pop reduction plugin. I can hear the difference, but I wonder if you can?