• 0 Posts
  • 17 Comments
Joined 1 year ago
cake
Cake day: June 13th, 2023

help-circle

  • I ask before I take the interview. Location, salary range, linux laptop are prerequisites to me working for anyone. If they punt on the laptop question it means no and they are hoping you’ll want the job even without. I can promise you I won’t, and if you view that as a red flag I can promise I don’t want to work there so I don’t care.

    If its a hard requirement for you just say that and say that’s for workflow and you don’t want to waste anyone’s time






  • To be fair, every part of it is a small binary that generally does a single thing. You don’t have to run them all or even install them but they bring a lot of necessary functionality around base host bootstrapping that everyone used to write in shell for every distro.

    I find it nice as an operators of multiple infrastructures to be able to log into a Linux system and have all the hosts bootstrapped in a relatively similar fashion with common tools.

    Sysv kinda sucked because everyone had to do it all themselves. Then we got sysv, openrc, upstart and then systems and there was a while there where you never knew what you’d get if you logged into a box. And oh look, I gotta remember 10 different config file locations and syntaxes to assign an IP. Different syntaxes to start a daemon. Do I need to install a supervisor or does that come with the init.

    People are doing a lot of really cool stuff with Linux OSs assigning IP addresses in 10 different ways or starting programs was never one of them.

    Its also not that systemd has a monopoly, there are other init systems out there, but all the big distros, RH, Debian, ubuntu, arch . . . all came to the same decision that it was the best available init and adopted it. There are other options and any one of those projects is big enough to maintain its own init, but no one really finds the value in dedicating reaources, so they haven’t.






  • The answer is that it depends what you’re doing. You can have an extremely efficient dev env CLI. You can kinda brows the web cli. You probably don’t want to edit videos and pictures in the CLI.

    Because a lot of foss has replaceable building blocks, you’re not going to find a ‘this is how you do things course’. You’re much more likely to find, ‘this is how you use a certain text editor in the CLI’.

    So, first, I guess, figure out or articulate what you want to do in the CLI. From reading and sending mail to writing code and building a dev environment to just basic scripting to maintain your install.

    After that step, you’ll want to try a couple of the building blocks that do that.

    Once you find one that kinda clicks, then you can go become proficient and start to put together the pieces of your workflow.

    I run arch/Ubuntu and gnome. I spend about 50-70% of my time every day in a terminal. I spend the rest in a browser. Sometimes I use files, libre office calc, gimp or the calculator app, but even combined their usage is probably a rounding error.

    I run gnome term (used to do a lot of urxvt but gnome term seems to work fine these days)

    From there, I start tmux. Inside of tmux, I run a few windows. One has email, a couple shells, chat and system monitoring.

    The next window has my core dev env, I run nvim with a server so I can upen tabs in nvim from different terminals, in nvim I run the lsp servers for linting and code completion. I use ranger as a file browser/previewer and that’s hooked to nvim so when I select a file there it will open as a tab in nvim, additionally I can run that file in the debug pane in the bottom of the window.

    Then I just have windows that I drop into to do additional tasks, ops work on multiple servers at once, a second dev env to make a quick change in a different package, or a new window to scrape up a one line script to parse a log file or data dump for processing else where.

    All of this takes time, for me about 15 years probably to say ‘ok, I want(need) to do this thing in the terminal, now what’s the best way to get that done . . .’

    And then, you just kinda build it.