LF + NIX: Simple Setup for Extreme Productivity

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

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

  • @лилпипка
    @лилпипка ปีที่แล้ว +24

    Dude huge thank you for making all these nix videos please don't stop

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

    Nix syntax for escaping characters is definitely a syntax

    • @vimjoyer
      @vimjoyer  ปีที่แล้ว +18

      One of the syntaxes ever made

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

      Can confirm. I assumed ChatGPT was making up dumb shit again.

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

    you're my go-to youtuber when it comes to nix stuff, keep them coming

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

    While exploring Nix, I found your video to be extremely helpful.

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

    1:49 There's a modern replacement for xdragon called ripdrag. It's based on GTK 4 and being actively developed while xdragon is outdated and not beign developed at all

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

      Nice! I'll check it out

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

      Ripdrag is really cool, it even can act as a place to drop things into

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

    My previewer of choice is ctpv
    ```
    settings = {
    previewer = "${pkgs.ctpv}/bin/ctpv";
    cleaner = "${pkgs.ctpv}/bin/ctpvclear";
    }
    ```
    It handles image previews, video previews, and a bunch of other previews that you can configure. Works with Kitty, but also terminals as well

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

      This is amazing!

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

      thank you
      edit: darn. not on macos. I was happy to find it works well on linux. strange that you can't do it on mac even though it works fine through ssh... 😖

    • @reyfoxperseus
      @reyfoxperseus 5 หลายเดือนก่อน

      but the ctpv cleaner
      do not work on tmux (on nixOS) :(

  • @THEMithrandir09
    @THEMithrandir09 6 หลายเดือนก่อน +1

    3:56 the more I learn about nix, the more I feel like IPFS seems made for it. Not only to get packages more efficiently but also to version any for you want with a hash and get it from anywhere. You'd have to host your own instance for everything you want to provide that others don't but just having ipfs paths to blobs life the icons file would make everything runable in a single command.

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

    Shame that the image preview stuff does not seem to work in tmux as I used that all the time for terminal window management

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

    🔥

  • @MrVampify
    @MrVampify 5 หลายเดือนก่อน

    I'm probably not going to use LF but pistol is now my fzf previewer

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

    Thanks!

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

    Just nice!

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

    i am new, i just want linux that just works, with high productivity
    I cannot use windows as it constantly breaks, security issues and I am doing CS degree that wants me to use linux and I am also thinking of making a career out of it

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

    A better solution to display images on wayland is the sixel protocol which is not kitty-proprietary and thus supported by more terminals (xterm, konsole, xfce-terminal, patched st, iterm2, vscode terminal and ofc the wonderful wayland-native foot, as well as has PRs for many others such as alacritty) and now even supported by tmux in the latest master branch.
    IIRC lf has a way to use chafa as image preview tool which supports both sixel and kitty protocols, as well as a fallback to ascii art when none available

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

      Do you have an example of using chafa for previews? I tried to use the example from the wiki, but I could not get it to work.

    • @Ifæn21
      @Ifæn21 6 หลายเดือนก่อน

      @@TheOwntageCrew Maybe a little late but what worked for me was the following, I only changed the file and chafa with their pkgs/bin/... and this was the result in my configuration of lf:
      settings = {
      preview = true;
      sixel = true;
      };
      extraConfig = ''
      set previewer ${
      pkgs.writeShellScript "lf-previewer.sh" ''
      case "$(${pkgs.file}/bin/file -Lb --mime-type -- "$1")" in
      image/*)
      ${pkgs.chafa}/bin/chafa -f sixel -s "$2x$3" --animate off --polite on "$1"
      exit 1
      ;;
      *)
      cat "$1"
      ;;
      esac
      ''
      }
      '';
      Also, you might need to check if your terminal has Sixel support: www.arewesixelyet.com/

  • @Microphunktv-jb3kj
    @Microphunktv-jb3kj ปีที่แล้ว +2

    what's the difference of LF and Ranger for example?

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

      LF is more minimal and quick.

  • @asahfikir
    @asahfikir 3 หลายเดือนก่อน +1

    Anyone ever got the same issue as me implementing this? I create a new file `lf.nix` inside my home.nix. But everytime I build always got error the file not found. But if I import it using absolute path of /home/myuser/dotfiles/config/lf.nix instead of relative path ./config/lf.nix I can build without issues. Although somehow it works I don't like to run sudo nixos-rebuild switch --flake . --impure everytime. That --impure looks ugly.

    • @vimjoyer
      @vimjoyer  3 หลายเดือนก่อน +1

      If you are using git, make sure to git add the lf.nix file. Flakes do not see unstaged files.

    • @asahfikir
      @asahfikir 3 หลายเดือนก่อน

      @@vimjoyer Thank you very much. Right on spot. I've spent almost a week for this error. Btw, Your videos helps me a lot in venturing into this unknown territory of nixos.

  • @pergollubits2393
    @pergollubits2393 9 หลายเดือนก่อน +2

    If I need to install a file manually it kinda negates the whole automation process, no?

    • @vimjoyer
      @vimjoyer  9 หลายเดือนก่อน +1

      You don't need to "install it manually", you need to copy it from the internet and then link it to .config from nix files.
      It will stay with your configuration, just not in .nix format. You don't have to download it every time.
      If you want, you can still just fetch it declaratively with fetchurl or flake's inputs.

  • @der.Schtefan
    @der.Schtefan ปีที่แล้ว +3

    Demo? :)

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

      Totally forgot about showing actual footage in the video 😅. It's nothing special, just a regular lf experience (which is quite good), but configured in a special way.

    • @der.Schtefan
      @der.Schtefan ปีที่แล้ว +1

      @@vimjoyer I would argue that this would have been kinda the point of the video, to show how nicer it is ;) Maybe make a follow-up video? :)

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

      @@der.Schtefan The follow up video would only showcase the result itself, and I like to include as much useful information in these videos as possible. I might make a video comparing different terminal file managers in the future, and maybe feature this configuration there.

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

      @@vimjoyer YES, please do it.