![]() ![]() All I need is in there: support for the programming languages I use (Kotlin/Scala/Java), support for the build tools I use (Gradle/Maven/SBT). Many people use the Ultimate Edition (paid version) but I use the Community Edition. I am a Kotlin/Scala/Java developer, and IntelliJ IDEA is just the best IDE on the market for these languages. And no, it has nothing to do with the Visual Studio IDE. Lots of plugins are available, updates are frequent (unlike Sublime…), and it is fast (unlike Atom). ![]() VS Code is great text editor, and it does much more (markdown preview, including images Javascript debugger, etc.). I was a great fan of Sublime Text… until Visual Studio Code came out. In this post, I thought I would share what are “my essentials” when I use my Mac… Visual Studio Code This goes through the choice of tools that I use, and how I configure them. One more thing to mention: Homebrew's casks are extremely useful.I am a Software Engineer and I like when the tools I use help me through my day of work, not when they make it complicated. At some point I might make my own library to set SyncThing configuration (I want it to setup sync folders and hosts automatically). I tried to find a good XML library for editing my SyncThing configuration, but the ones I tried didn't work very well. I did this to install Atom packages with apm and edit gsettings. ![]() LibrariesĪnsible can't bundle everything, so it's useful that you can add custom Python scripts to the libraries folder. ![]() Similarly, a role can be roles/role_name, or can be split into roles/role_name//main.yml. The advantage of the second is that you can also add host_vars/host_name/vault.yml. For example, you can put host variables in host_vars/host_name (a file), or host_vars/host_name/vars.yml. It's interesting that in a lot of cases, you can either use a single file, or break things out into folders. I expected to need more config changes, but if you follow the best practices for folder layout, Ansible can find everything automatically (like roles, variables, etc.). I've used this to make my hosts file part of the repo, and to setup the vault password mentioned above. Conveniently, you can use the ansible.cfg to set basically any option you'd want. Ansible seems to be designed to store everything in /etc, but I want the repo to contain everything I need. One nice thing about doing all of this myself was learning about the Ansible configuration file and how to set things up. This lets me effectively synchronize the vault password to all of my computers, without putting it in the vault. I'm not using the vault for anything right now, but I left it in place since it has a cool setup that I plan to use in the future: It uses the LastPass CLI to download the vault password. The problem with Ansible vaults is that they're checked into git, so if you ever leak the password, you can't really change it (since the old version of the vault is still in your history). Mine currently contains a GitHub token (which I didn't end up using), and I don't plan to ever store any non-generated passwords in it. You'll notice that there is a vault, which Ansible can use to store passwords. There's nothing private in my Ansible setup (it's just a copy of that page on my website anyway), so I hosted it on GitHub: This weekend I finally got around to it, and learned a little bit about Ansible while I was at it. I've also had a note there for years saying eventually I should use Ansible for this. I've been keeping a computer setup page on my website for a while, describing the exact steps needed to make a computer work how I want after a new OS install. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |