Solving the Dotfiles Problem (And Learning Bash)

  Рет қаралды 83,472

Bartek Spitza

Bartek Spitza

Күн бұрын

I was having some issues syncing my Linux configurations across different machines. I solved it by building an install script and thought it was a good opportunity to explain some of the inner workings of Bash and Linux.
Github: github.com/bartekspitza
Dotfiles repo: github.com/bartekspitza/dotfiles
This video was made with Motion Canvas, an incredible library by @aarthificial !
Music:
Skye Blue - Yoav Ilan
Ave Maria Gounod - Michele Nobler
Little Things - ANBR
Ballerina - Yehezkel Raz
Timestamps:
00:00 Intro
1:26 Extracting from Bashrc
1:55 Control flow explained
2:53 Install script
3:07 Filename expansion
3:33 Executing & sourcing scripts explained
4:00 Continuing script
4:55 Man pages
6:03 Positional variables
6:45 Symbolic links, filesystem, inodes
7:58 Running the script

Пікірлер: 251
@vinh7251
@vinh7251 4 ай бұрын
This is some of the clearest and most easily digestible content on bash I’ve ever seen, hands down. Kudos, subscribed and thanks for sharing.
@heribertoalvarado475
@heribertoalvarado475 4 ай бұрын
Couldn't agree more with your comment. It's just easy to understand. Thanks a lot for this content!
@waleedmasoom6326
@waleedmasoom6326 4 ай бұрын
definitely echo the sentiment, the visuals make it super clear!
@twinkledj1020
@twinkledj1020 3 ай бұрын
I can’t agree more ❤🎉
@sokmontrey
@sokmontrey 4 ай бұрын
When I smell hard work and good visual, my monkey brain to like with no question.
@ZeR02044
@ZeR02044 4 ай бұрын
*We
@dothgaerwenoakblossom15
@dothgaerwenoakblossom15 4 ай бұрын
I like every video I watch right after clicking on it almost automatically. Sometimes I can't even remember I liked it. When I smell hard and great visuals, I SUBSCRIBE.
@matankabalo
@matankabalo 4 ай бұрын
Loving the animations! It really makes a difference in the learning experience
@AnalyticMinded
@AnalyticMinded 4 ай бұрын
This is the kind of video the Linux community needs! Short and to the point, but packed with useful information.
@edupazz
@edupazz 4 ай бұрын
Using unix since 2017 or earlier and that's the first time I got to understand how if statements works in Bash. Incredible tutorial
@alexgregory5583
@alexgregory5583 4 ай бұрын
This is sooooo good. Feel like you explained the Bash syntax way better than I've seen before
@Madinko12
@Madinko12 4 ай бұрын
I used to do this, but symlinks ended up being messy and the installation scripts were getting more and more complex and unmaintainable. Then I realized that setting up a new PC was nothing fundamentally different than provisioning a server. So I tried to express my setup as ansible playbooks and it turned out working amazingly. I have multiple roles that I can filter in or out depending on what I want to install. For instance, I have a "dotfiles" role that just installs my dotfiles. Another one is used to install my system packages, another to configure my firewall and so on. It comes really handy when I'm setting up a new machine: I just run all my playbooks and everything just works. Not just the local user configuration, everything including packages I know I need, advanced system config and dotfiles. Everything can be configured just as I like. I can even use templating and other features to fine-tune the deployment depending on the device I'm running on. The only disadvantage of doing this compared to installing symlinks is that you need to refrain from editing your dotfiles locally. Or if you do, just remember to update your playbooks accordingly.
@carabolic
@carabolic 4 ай бұрын
Awesome video. Great visuals, perfect cadence and even though i knew some of it, I was hooked and kept on watching. Please keep doing what your doing.
@jorgeimo
@jorgeimo 3 күн бұрын
I always love seeing some Motion Canvas in the wild, great video!
@rochakgupta6116
@rochakgupta6116 4 ай бұрын
Gem of a video. Uses the perfect amount and quality of animations to convey information to the point. Subbed!
@Yazan_Majdalawi
@Yazan_Majdalawi 4 ай бұрын
Lots of small but very useful tricks and tips.. And you make sure that the viewer can see the entire picture, which makes it hard for him to feel lost. This is the first video I see on this channel, but I liked, subscribed and turned on notifications halfway through the video. Great job.
@Pabocheoreom
@Pabocheoreom 4 ай бұрын
Educational and informative! Love the timestamps as well.
@AnthonyBullard
@AnthonyBullard 4 ай бұрын
Just the clear explanation of using test, how bash works, and functions makes this video worthy of a like! Great job on this video
@MoAlarawi
@MoAlarawi 2 күн бұрын
lets say that this content puts users in mind so they know something new not just explicitly show off knowledge. o like yo fact that the simplified concept are delivered in beautiful way. thanks a lot for respecting our time.
@bobthemunk
@bobthemunk 4 ай бұрын
Incredibly concise and informative video. I've never seen someone explain each aspect you covered so simply and effectively!
@PoeLemic
@PoeLemic 4 ай бұрын
Excellent video that explained a lot of things that I had questions about. Yet, I just never have had the time to sit down and walk through everything to really split each issue out. But your video answered all my questions and made it very clear how to do different things that I was wondering about. Please, keep producing content like this. It's excellent.
@Latsu15
@Latsu15 4 ай бұрын
You should look into `stow`ing configs if you haven't already. Has made it easier to make my shell configs portable and easily accessible when I need to set up a new machine.
@reality-drift122
@reality-drift122 4 ай бұрын
you've taught me more about bash and in a clearer way then the 8week linux course i did. Thank you!
@_edoyt
@_edoyt 2 ай бұрын
phenomenal work, from the beautiful visuals to the clear explanations, looking forward to more content like this!
@TQuantP
@TQuantP 4 ай бұрын
Love the video, keep it up! I was avoiding learning bash for a while due to it being kinda complex, but you made me think it's not that overwhelming!
@x12lesser21x
@x12lesser21x 4 ай бұрын
I was just in the middle of creating my own bash toolbox that could easily be installed to new devices with git but didn't figure out the best file structure yet. This video hit every single goal I wanted to achieve with my project in a substantially more elegant way, thank you for sharing!🤓
@Filaxsan
@Filaxsan 4 ай бұрын
Man. This was GOLD! Thanks for making and sharing! Incredible work 💪
@avramukk
@avramukk 2 ай бұрын
It's the most useful video I have ever seen about explaining some code staff. Please keep moving. Thank you. Love it.
@majksa03
@majksa03 4 ай бұрын
Great video! Got yourself another subscriber 😊 0:20 I know it's not the topic of this video, but I really recommend setting up ssh config file, instead of using aliases for ssh This allows you to type in just "ssh my_srv_name" and it will use the correct hostname, port, user, password/key, ...
@xinaesthetic
@xinaesthetic 4 ай бұрын
It's also useful if you want to use rsync or something as well.
@BartekSpitza
@BartekSpitza 4 ай бұрын
Haha, yeah the aliases for ssh always felt a little dubious.. thanks, will definitely start using this 😅
@enkryp
@enkryp 6 күн бұрын
The same is true for git, look up "git aliases".
@tombil-certon
@tombil-certon 4 ай бұрын
Your explanations are crystal clear and easy to grasp! Please keep making more top notch content :)
@young_oak
@young_oak 4 ай бұрын
I need moree!! How come your video is so HQ yet you have so few! Kudos tbh. Love how simply you delved into dotfiles which ive fought with for a while
@jonlegasa2482
@jonlegasa2482 4 ай бұрын
Love the animations. This topic has been hard for me and the visuals help a lot.
@marckraw
@marckraw 4 ай бұрын
This is super amazing explanation, the quality of this video is amazing :D nice job, thank you for that, super helpful!
@pavlosd5911
@pavlosd5911 4 ай бұрын
Great video sir, I like the flow it has and the smooth animations. Keep it up!!!
@penguinpatroller
@penguinpatroller 4 ай бұрын
this is actually something i have been mulling over for a while now. Switching settings from my work laptop to my personal laptop was very tedious. Very well made video for people that are not well versed in shell scripts.
@chammy2812
@chammy2812 4 ай бұрын
This was awesome! My schooling is in physics, but now for research, I do a lot across lots of different machines all over the globe and must do everything in the terminal. Had to learn all this myself and would have loved to have this years ago. This is entertaining and informative. (I'm definitely gonna copy that git branch in the prompt, didn't even know I could do that)
@ImSelthos
@ImSelthos 4 ай бұрын
Great vid! Im learning so much watching youre vids. Keep it up man!
@lapppse2764
@lapppse2764 4 ай бұрын
Thank you for this great video! Uncomplicated and interesting to watch.
@MICHEAL_BERKELEY
@MICHEAL_BERKELEY 4 ай бұрын
its not just informative video, also so relaxing! at the same time learned a lot in few minutes only.
@dawid_dahl
@dawid_dahl 4 ай бұрын
Wonderful video and awesome production - well done, and thanks for sharing! 👏🏻😍
@MoAlarawi
@MoAlarawi 4 ай бұрын
This is by far the best video that cares about we understand something and not brag about it. This is so good the informative that i got inspired to do similar work to my students.
@rwiankowski
@rwiankowski 4 ай бұрын
Amazing visualisation and explanation!
@luiscanada3855
@luiscanada3855 4 ай бұрын
Absolutely fantastic and informative video, dismissed some long help myths that I had about bash and cleared stuff up. Keep it up!
@Blue-bb9ro
@Blue-bb9ro 3 ай бұрын
I've learned so much, didn't search for this video: but happy I found your channel. Thanks
@StefanVosloo
@StefanVosloo 4 ай бұрын
Great video! You're explanations are very helpful.
@wh7988
@wh7988 4 ай бұрын
subbed, even though I advocate for nix to being the solution to the dotfile problem, your video style is just so clean. Can' t wait to see what you produce next :))
@BartekSpitza
@BartekSpitza 4 ай бұрын
Thanks! Haven't heard of it, will have to check it out! :)
@wh7988
@wh7988 4 ай бұрын
@BartekSpitza don't do it nix is a deep rabbit hole that has 20 years of lore. too much documentation rot and the language doesn't make any sense
@xinaesthetic
@xinaesthetic 4 ай бұрын
​@@wh7988that's a very meta way of advocating for something... 😂
@wh7988
@wh7988 4 ай бұрын
@@xinaesthetic it is only for the mentally ill, I would never want to ruin anyone's life by introducing them to the nix rabbit hole
@maurolimaok
@maurolimaok 3 ай бұрын
This is a high quality intel. Hope this channel grows, A LOT! Favorited.
@user-bw2vq9lp2v
@user-bw2vq9lp2v 4 ай бұрын
Amazing animations! also very informative
@davidrempel433
@davidrempel433 4 ай бұрын
This was such a great video. I will have to watch a few times to fully understand it, but I subscribed and can't wait for more videos.
@XxZeldaxXXxLinkxX
@XxZeldaxXXxLinkxX 4 ай бұрын
I'm in the same position as you (dev + Sysadmin) , and my solution for managing consistent configurations across different systems as well as compartmentalizing components was using Nix/NixOS
@joselazovargas
@joselazovargas 3 ай бұрын
Legend, such a great video, been thinking about this for a while
@diegobarbieri7804
@diegobarbieri7804 4 ай бұрын
this video is unbelivable, really well done!
@flokleiser
@flokleiser 4 ай бұрын
idk why this popped up on my feed, i cant program for shit but i still watched the entire thing, very informative and well presented, good job
@BartekSpitza
@BartekSpitza 4 ай бұрын
haha lmao ❤️
@mumk
@mumk 4 ай бұрын
phenomenal animation, you are pretty much impeccable with your skills
@nastynaza
@nastynaza 4 ай бұрын
This video was really well done. Great explanations!
@TON-vz3pe
@TON-vz3pe 4 ай бұрын
The beauty of such journey is that everyone who follows this path at first feels like this is important work and they want to share their story to the world as if this is a great achievement which deserves so much admiration, but long after, as individuals we realise that nothing we do no matter how big or small, nobody really cares. But that doesn't mean we should stop doing this. We have to do this only our sake truly and feel happy while learning. Happy learning. Cheers.
@azr_sd
@azr_sd 4 ай бұрын
Very pleasant video, loved every second of it
@OmegaR4y
@OmegaR4y 4 ай бұрын
Awesome video! Very instructive with great animations
@malvaloca
@malvaloca 4 ай бұрын
Amazing animations and great explanation as well, I loved them.
@shomikhan1333
@shomikhan1333 3 ай бұрын
Thanks a lot for sharing knowledge with such awesome visualization.
@Drogny
@Drogny 4 ай бұрын
This was an incredible video and inspired me to try something similar!
@crazykidsinacar
@crazykidsinacar 3 ай бұрын
Dude, awsome video, screenplay and explanation, im not speak fully english but this video give me total knowledge about the thread
@unathorizdwatermelon
@unathorizdwatermelon 4 ай бұрын
I make bash scripts for mass debugging servers in a production setting and this is very cool. Learned some new things like how sourcing really works. Great video.
@ryuk_shinigami
@ryuk_shinigami 4 ай бұрын
Subbed. You put a lot of hardwork in the video.
@twinkledj1020
@twinkledj1020 3 ай бұрын
Thanks a lot for sharing such awesome video! 🤩
@sifatulrabbi
@sifatulrabbi 4 ай бұрын
Great stuff. Going to upgrade my configs using this technique.
@nmbr73
@nmbr73 4 ай бұрын
Very well made / high quality video - impressive! Nice use case to explain some important concepts. As a next step I'd recommend to look into git bare repositories to manage the dotfiles. My go to tool for this purpose is yadm ... but sure, using a tool does not tell you how things work - and knowing dotfiles, bash, git, etc. will help you understand how a tool like yadm works and what it does for you.
@BartekSpitza
@BartekSpitza 4 ай бұрын
Thanks man! Will have to check out yadm!
@anthonymyers4378
@anthonymyers4378 Ай бұрын
Easily one of the best linux videos I've ever seen. So helpful! Can I ask what program you used to do your visuals? This video is simply top notch.
@john.dough.
@john.dough. 4 ай бұрын
I didn't learn anything new, but I still enjoyed the video because of the visualizations. Nice job
@marcus_exe
@marcus_exe 4 ай бұрын
Great work, congratulations! 👏
@SoreBrain
@SoreBrain 4 ай бұрын
I already have a dotfiles workflow but I learned a lot, good stuff.
@michaellaweh5084
@michaellaweh5084 3 ай бұрын
Bro, thank you for the video your video helped me allot. I had the same issues handling and managing my configs and I found this video. Thanks.
@nson22
@nson22 3 ай бұрын
The narrative, content, explanation were just AMAZING 🤲🤲🤲🤲🤲🤲🤲🤲🤲🤲🤲🤲
@JanKowalski-se7tn
@JanKowalski-se7tn 4 ай бұрын
Did the same thing a long time ago, great advice! Saved me a lot of headache down the road
@mattias.engineer
@mattias.engineer 3 ай бұрын
Very nice video, well explained!
@williamabousharaf8980
@williamabousharaf8980 4 ай бұрын
Amazing tutorial and experience with bash scripting!
@the_pandaman
@the_pandaman 3 ай бұрын
Awesome vid!! The animation are concise and dope. Note: I prefer stow so I can get different versions of my dotfiles and I can switch between them easily.
@user-gm8xr7qr2l
@user-gm8xr7qr2l 4 ай бұрын
Nice and clean animation and explanation
@JacquesvanWyk
@JacquesvanWyk 4 ай бұрын
This is such a great video. Well done and clear.
@arnoldwolfstein
@arnoldwolfstein 3 ай бұрын
that's a very satisfying illustration.
@Hbilbo98
@Hbilbo98 4 ай бұрын
I don’t usually comment, but I felt compelled to given how I literally just did this same thing yesterday! The KZfaq algorithm knows - our scripts are very similar with the read statements and even the prompt format, it was kind of eerie to watch. Definitely some syntax and directory organization I’ll be implementing from your approach. Thanks!
@mrc1500
@mrc1500 4 ай бұрын
Clear, instructive and very nice video. Good voice, too.
@samarthnagar6988
@samarthnagar6988 4 ай бұрын
I love living in terminal it's an great experience. Efficient and fast completely customisable and makes me look smarter than everybody in my class
@Wsharp99
@Wsharp99 4 ай бұрын
I love this, great ideas and great presentation!
@robertsimmons9563
@robertsimmons9563 4 ай бұрын
Wow… just wow. This was beautiful. Seriously though, how in the world? I’m speechless
@polarisprog
@polarisprog 4 ай бұрын
Loved the video! You are extremely underrated!
@matthieutricoire3079
@matthieutricoire3079 4 ай бұрын
Amazing ! Really beautifull editing !
@kenny_harmon
@kenny_harmon 4 ай бұрын
Incredible video production 👏🏻 wow
@wayneqwele8847
@wayneqwele8847 4 ай бұрын
The quality of this vid and animations is amazing..
@blzr8
@blzr8 2 ай бұрын
Sir we need more good stuff This too good
@danielfernandes1010
@danielfernandes1010 4 ай бұрын
Great watch! For SSH, there is a built in way to set up aliases in your ssh config. Veronica Explains has a video on it.
@vasujain2
@vasujain2 4 ай бұрын
Best Tutorial of Arch + Hyprland ever, after all was done, when my lapptop booted for first time I was like amzaed. Never used any rice cooler than this in my life.
@AlleBalle54
@AlleBalle54 4 ай бұрын
very nice explanation and graphics
@KarimShalapy
@KarimShalapy 4 ай бұрын
Holy Hell !!!! Superb quality!!! Very underrated!!!!!!
@BartekSpitza
@BartekSpitza 4 ай бұрын
Wow, thanks man ❤️
@adamevil550
@adamevil550 4 ай бұрын
WTF this is a great video, wasn't expecting it to be this good.
@coffee-is-power
@coffee-is-power 4 ай бұрын
You can also use nix home manager and have it manage all your dotfiles in any distro
@pallzoltan
@pallzoltan 4 ай бұрын
Very nicely presented
@ASOUE
@ASOUE 4 ай бұрын
Great video! Learned a lot
@chai01724
@chai01724 4 ай бұрын
This is really useful! Thank u!
@maguilecutty
@maguilecutty 4 ай бұрын
Awesome work explaining the bash syntax. Though I recently upgraded mine to go and found it was easier.
@carlosangelpatriciomartine7346
@carlosangelpatriciomartine7346 3 ай бұрын
Wow! This is an amazing video!!
@AK-vx4dy
@AK-vx4dy 4 ай бұрын
In 8 minutes you give me so much unclutterd knowledge, it is amazing !!!!🤯 (One negative... this music is used in my country as a filler at mourinings)
@bambitsunami4165
@bambitsunami4165 Ай бұрын
very cool! and those animations! damn
@cajunvoodoo5930
@cajunvoodoo5930 4 ай бұрын
This is great! I didnt know bash worked in terms of strictly return codes! The solution is very clean, and I love those animations! my biggest concern with your solution is how reproducible these dotfiles are. over the last few months or so, i moved over to NixOS, and its been a total dream in terms of the dotfiles problem. You are basically forced to solve the problem you mention in a very clean, albeit verbose, language that explains exactly how to set up your system.
@prometheus95
@prometheus95 4 ай бұрын
Subbed. This is really well done.
The purest coding style, where bugs are near impossible
10:25
Coderized
Рет қаралды 841 М.
This Zsh config is perhaps my favorite one yet.
17:24
Dreams of Autonomy
Рет қаралды 85 М.
Trágico final :(
01:00
Juan De Dios Pantoja
Рет қаралды 28 МЛН
The best home workout !! 😱😱
00:27
Tibo InShape
Рет қаралды 9 МЛН
7 Essential Command Line Tools (2022)
9:12
Tech Craft
Рет қаралды 186 М.
Using docker in unusual ways
12:58
Dreams of Code
Рет қаралды 382 М.
What the hell is Zellij?
8:00
typecraft
Рет қаралды 50 М.
Stow has forever changed the way I manage my dotfiles
8:09
Dreams of Autonomy
Рет қаралды 187 М.
Vim Tips I Wish I Knew Earlier
23:00
Sebastian Daschner
Рет қаралды 33 М.
5 Command Line Tools That Boost Developer Productivity (2023)
8:02
Dotfiles! Here's how I organize them.
9:37
Andrew Burgess
Рет қаралды 36 М.
The Fascinating Programming of a Chess Engine
6:45
Bartek Spitza
Рет қаралды 271 М.
Harder Drive: Hard drives we didn't want or need
36:47
suckerpinch
Рет қаралды 1,6 МЛН
Переходник для IPhone • 181649538                         Делюсь обзорами в профиле @lykofandrei
0:15
🤖Вернулись в ПРОШЛОЕ🤪
0:28
Demin's Lounge
Рет қаралды 99 М.
Why spend $10.000 on a flashlight when these are $200🗿
0:12
NIGHTOPERATOR
Рет қаралды 18 МЛН
Трагичная История Девушки 😱🔥
0:58
Смотри Под Чаёк
Рет қаралды 185 М.