Ugh!!! This is why I hate computer dev! 🤣
So I decide I want to fix the CSS on vsa.com for Windows. In particular I wanted to try to fix the scrollbars so they look like the MacOS version. I'm thinking it will only take a few mins.
So I decide to start vsa.com in dev mode on Windows. (I normally do that dev on Mac).
Ok
- Clone repo
- Try to run meteor in bash for Windows.
- Mongodb won't start.
- Check online,
- Get told no one uses that and I should try meteor for normal Windows.
- Meteor needs chocolaty for windows.
- Install that, needs admin ☹️.
- Try to install meteor, also needs admin ☹️
Okay, F!!!, I don't want my machine effed up when different versions of meteor needed for one project vs another. Rant mode on, I wish all dev worked without installing anything globally or needing any kind of admin. As we learn of more and more exploits you should NEVER EVER BE ASKED FOR ADMIN. EVER!!!. I know it will be years or decades until this BS stops. Millions of machines will get powned by running un standboxed software that has exploits and installs via admin but until then I guess VMs it is 😡.
- Check about using some kind of virtualization. Microsoft says use Docker.
- Okay, install docker, start with Windows container.
- Decide that's probably a bad idea, more problems in Windows than Linux using meteor.
- Okay, install Linux container.
- Oh, it doesn't have git.
- Install git.
- Try to install meteor.
- Meteor needs curl. No curl. Okay, install curl.
- Now spend 20 minutes finding out how to share folder from windows inside container.
- Find out.
- CD into folder inside container.
- mongodb won't start. Error 1.
- Check online, needs locales.
- Try to set locales.
- Locales not installed.
- Install locales.
- Set locales.
- Try to start meteor, mongodb fails with error 14.
- Get told that's from trying to run in shared folder. Mini rant, isn't the point of continers that they just work across machines?
- Okay, fine, cd to non-shared folder, clone git repo,
- Oh, in this case need node.
- Try to install nvm. Nvm needs python.
- Install python. nvm needs make.
- Install make.
- Install nvm,
- Install node 8.
- try running meteor. Get error 1.
- Set locale, get error 14.
- It's now been > 2 hours and all I wanted to do was something that should have taken 2-5 mins.
Eventually I got meteor running only to find out that tar on macOS and tar on Linux have different options and the ones I was using to re-write paths as I untar a backup won't work on Linux. I try restoring the DB manually but it doesn't work (no errors, but nothing showing up on the site).
I guess this is just par for the course. Doing new stuff is always a pain in the ass. It always takes time to setup something new and get it working and it's only after you've done that that you then go back to ignoring it because it's only important once every few months or years. Then next time you need to do it it's been so long that it's all changed and you have to spend the hours or even sometimes days getting your dev environmnet setup for your new project. Unfortunately new projects are getting more common or rather switching between many projects all with different needs for globally installed software is becoming far more common.
Still, it's super frustrating when you think something is going to only take a few mins and just getting to the point where you can actually do those few mins takes hours.
Finally I did what I probably should have done in the first place. I just run the mac version and go to http://<ipOfMac>:3000
on Windows, edit on Mac, check on Windows.
I'm done in a few. Now if only all the browsers had a standard for scrollbar styling as it only works in Chrome.