LF + NIX: Simple Setup for Extreme Productivity

Поділитися
Вставка
  • Опубліковано 30 вер 2024
  • Discord server: / discord
    Donations: ko-fi.com/vimj...
    Code: github.com/vim...
    Download the icons file command:
    $ nix run nixpkgs#wget -- "raw.githubuser..." -O icons

КОМЕНТАРІ • 34

  • @Muaahaa
    @Muaahaa Рік тому +34

    Nix syntax for escaping characters is definitely a syntax

    • @vimjoyer
      @vimjoyer  Рік тому +18

      One of the syntaxes ever made

    • @TomasSandven
      @TomasSandven 10 місяців тому

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

  • @лилпипка
    @лилпипка Рік тому +23

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

  • @QWERD195
    @QWERD195 Рік тому +9

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

  • @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

    • @vaisakhkm783
      @vaisakhkm783 Рік тому +2

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

  • @RichardJActon
    @RichardJActon 10 місяців тому +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

  • @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 8 місяців тому +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 3 місяці тому

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

  • @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

  • @asahfikir
    @asahfikir 2 місяці тому +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  2 місяці тому +1

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

    • @asahfikir
      @asahfikir 2 місяці тому

      @@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.

  • @akibahmed229
    @akibahmed229 11 місяців тому +3

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

  • @THEMithrandir09
    @THEMithrandir09 4 місяці тому +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.

  • @hary6416
    @hary6416 Рік тому +4

    🔥

  • @dude9501
    @dude9501 11 місяців тому +3

    Thanks!

  • @MrVampify
    @MrVampify 3 місяці тому

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

  • @Microphunktv-jb3kj
    @Microphunktv-jb3kj Рік тому +2

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

    • @vimjoyer
      @vimjoyer  Рік тому +1

      LF is more minimal and quick.

  • @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 4 місяці тому

      @@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/

  • @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 11 місяців тому

      @@vimjoyer YES, please do it.

  • @pergollubits2393
    @pergollubits2393 7 місяців тому +2

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

    • @vimjoyer
      @vimjoyer  7 місяців тому +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.