I wanted to have a separate laptop where I only use the terminal for my use cases. At the moment I am somewhat confident using the terminal, but I think limiting myself to tty only would build my confidence even more. Any tips?

EDIT: I am already using nvim and I already have installed a minimal distro (Arch). I just need advice on how to actually run this system effectively.

  • 柊 つかさ@lemmy.world
    link
    fedilink
    arrow-up
    21
    arrow-down
    1
    ·
    5 months ago
    • set a good tty font (it’s almost all you’re gonna see)
    • be comfy with basic core utils (mv, cp, chmod, …)
    • choose a shell (bash, fish, …) and set up some useful aliases/abbreviations
    • fzf or something similar does wonders (also replaces things like dmenu)
    • terminal multiplexers are used instead of window managers
    • some applications allow you to do some graphics (like mpv to play video)
    • there is more advanced stuff you can do with frame buffers
    • there are terminal browsers like w3m or lynx
    • a good extensible text editor is essential (vim, nvim, emacs, helix, …)
    • research some cli applications for your usecase (cal (calendar), neomutt (email), …)

    Over time your collection of aliases and scripts will grow to make common tasks you do easier.

    • atzanteol@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      8
      arrow-down
      2
      ·
      5 months ago

      I disagree on the aliases. I’d recommend using almost none. It builds competence with the commands on all systems even without your special .bashrc. It’ll be easier to write scipts and change shells as well.

      • 柊 つかさ@lemmy.world
        link
        fedilink
        arrow-up
        4
        arrow-down
        1
        ·
        5 months ago

        I use fish abbreviations. Unlike bash/zsh aliases, they expand when you press space or enter. This way you see the original command every time you use the alias, and you can edit as well. This should lighten the concern you have a bit. Your concern is something that sysadmins keep in mind e.g. default vim bindings so you are always comfortable on any server. However for desktop use I don’t think leaving the speed and comfort on table is worth it. Most desktop users only use their own systems anyway.

        • atzanteol@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          4
          arrow-down
          1
          ·
          5 months ago

          It’s about building muscle memory as well though. You are right that many home-gamers will probably never be without their customizations though. But if you do re-installs, setup VMs, try new distros, etc. it’s beneficial.

          Just my opinion though.

    • theshyprisoner@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      5 months ago

      Thanks a lot, I’ll definitely try the terminal multiplexers you’re talking about. I wondered how you would get different windows in tty.

    • theshyprisoner@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      1
      ·
      5 months ago

      Well yeah, but I want to know any tips on doing it effectively. If I just “don’t install a DE” I wouldn’t know where to go from there.

      • bobs_monkey@lemm.ee
        link
        fedilink
        arrow-up
        3
        ·
        5 months ago

        If I’m reading your post right, you basically want a fully functional system that is console only (no GUI), right? So when you go to install, just simply skip installing the desktop environment/window manager.

        That, or you can set it up to where your system boots to the console, and you can activate the DE/WM if you want to (like startx for X11). Each environment is different, but I think it’s removing the line for starting the DE/WM from either systemctl or maybe a hook, I forget.

        • theshyprisoner@lemmy.mlOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          5 months ago

          Yes, I know how to this. I think the way I’m saying it is confusing so let me explain. I know how to install a minimal system without a GUI, however I needed advice on the tools to be able to run this system effectively (i.e. tmux, byobu, and other things people have been mentioning).

  • markstos@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    5 months ago

    I built a console-only laptop once for financial reasons. I wanted something to travel with on a trip and was donated a laptop that, I think 20 MB of RAM after I upgraded it. I was able to run vim, perl and mutt was very tolerable performance.

    I don’t think there’s really special tips. Pick a goal of some tasks to accomplish. Work towards them, discover the rough edges and find solutions for them. If you install everyone else’s favorite CLI apps, you can end up more than you need.

    All that said, if I had the memory to run a GUI, I probably would have do so. But I wasn’t going to have a lot of time for web browsing and other laptop on that trip anyway.

  • arcosenautic@lemmy.world
    link
    fedilink
    arrow-up
    4
    arrow-down
    1
    ·
    5 months ago

    Like others said, you can try installing Arch manually (not with the install script). You get the hang of the terminal and you get to see a bit more of how Linux works under the hood. The wiki is your friend, spend some time reading it!

    • theshyprisoner@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      5 months ago

      I actually am using a manual Arch install. What i meant by gaining confidence is completely abandoning xorg and using the tty only.

  • f00f/eris@startrek.website
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    5 months ago

    If you haven’t set up this laptop yet, then I’d suggest installing a server-oriented distro like Debian, AlmaLinux, or Ubuntu Server. Those have minimal install options that come without a desktop environment installed, as most servers do not need one. If you’d like to make the install harder for yourself, this might be a good excuse to give Arch Linux or Gentoo a try, as those have the option of a fully manual install. If you’d like, you can install a desktop environment afterwards using the package manager.

    If you already have a Linux with a graphical desktop installed, you can configure the system not to automatically start it with sudo systemctl set-default multi-user.target. (Do not do this on your main device!) You can re-enable it with sudo systemctl set-default graphical.target.

    Regardless, you can then start a graphical session using startx, or whatever command is more appropriate for your desktop environment (gnome-session to start GNOME on Wayland, startplasma-wayland to start KDE Plasma), or by sudo systemctl starting your login screen manager (sddm, gdm, lightdm, etc).

  • frankenswine@lemmy.world
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    edit-2
    5 months ago

    Just go for it! It’ll be fun. You will find yourself navigating your digital life (or at least: most of it) at relative ease with less distractions and graphical fuzz you otherwise get.

    Getting to know terminal multiplexer (like screen) or vi-keys are crucial skills for anyone who is not afraid from working on “headless” machines!

    • theshyprisoner@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      5 months ago

      Messaging, reading, school work, watching anime, music, web browsing (may not be able to do this one nicely though). My use cases are very simple to implement on tty-only I think.

      • steeznson@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        5 months ago

        It is possible to watch movie files rendered in ascii with ffmpeg but I wouldn’t recommend it. Playing videos any other way requires a graphical interface.

        Web browsing is possible with links, w3m and eww-mode on emacs.

        You will struggle with school work. Eduroam is hard to connect to using the CLI for example.

        • theshyprisoner@lemmy.mlOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          5 months ago

          I was able to use mpv to watch some anime I had downloaded on tty. Does this mean this was only possible because I already had xorg installed and running (I was using qtile prior to that)? I’m not sure if that’s how that works though.

          • steeznson@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            5 months ago

            Yeah you’ve got xorg running if graphics are being drawn, like windows or specifically windows with borders

  • gronjo45@lemm.ee
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    5 months ago

    Amazing post! I’ve been wanting to do the same… Have you found a CLI .csv file editor? One of the points of friction for me is finding how to replace Excel’s functionality past Libreoffice. I’m more curious to see what that workflow can do when one uses no GUI whatsoever.

    • theshyprisoner@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      5 months ago

      I’ve found sc-im to be very useful, but I’m still a little new to it. Visidata is another one that seems to be a lot more powerful than sc-im.

      • Hule@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        5 months ago

        I have used sc-im a few times, I like the simplicity and vim shortcuts.

        Thanks for mentioning visidata, I’ll install it.