How I Setup a New Development Machine - Using Scripts to Automate Installs and Save Time

Поділитися
Вставка
  • Опубліковано 26 гру 2024

КОМЕНТАРІ • 68

  • @coreyms
    @coreyms  5 років тому +36

    Hey everyone. I spend a good bit of time describing what each script is doing in this video, but you can imagine how fast these installations would go if I just ran the scripts without talking. Using these techniques, I usually have new machines set up exactly how I like them within minutes.
    I've updated some of the scripts from this video. I realized afterward that my sublime.sh script didn't include my preferred Keyboard Shortcuts or Anaconda Package settings. Those are now included. These scripts are always evolving so that I can set up machines faster and better each time. I would recommend coming up with your own set of personalized scripts that allow you to do that same. It's a great feeling when you get a new machine and run these scripts, and within minutes you have a machine that has all of your preferred applications and settings.
    As far as the Sublime Settings not being set up with my install script, I believe it's possible that the location for the settings isn't created until after Sublime has been opened for the first time, but I'm not 100% sure. There will need to be some more investigation there. But anyways, I hope you all are having a great week!

  • @larstomas
    @larstomas 5 років тому +20

    A smal tips: To maximize a window instead of making it ful screen you can hold down ALT while clicking the green button. Thanks, for an interesting video!

  • @carlwcampbell
    @carlwcampbell 5 років тому +5

    Thank you, Corey. Once again, you point to something every "techie" that finds themselves in brand-new environments, should practice, to save time. Hopefully, the viewers can find inspiration to port this to Windows-specific setups, replacing 'brew' with 'chocolatey' and writing some clever batch scripting.

    • @jkaw963
      @jkaw963 5 років тому +1

      For windows, you can use powershell to automate a lot of what you would do manually when setting up your machine, even install chocolatey and add a task to update your programs weekly. I made a website when I was learning front end dev for this exact purpose

  • @STxFTW
    @STxFTW 5 років тому +5

    I was taking a software engineering class and we had to automate tests using bash scripts. A combination of that class + your video in terms of knowledge is going to be crucial whenever I decide to create scripts to automate the installation process of when I buy a new MacBook because currently, my current one is dying! Thank you for the useful info (and the insight on how you deal with setting up a new machine)!

  • @romankhripunov6550
    @romankhripunov6550 5 років тому +8

    first thing - like
    second thing - watch
    thanks for your videos)

  • @mohammadsamir2713
    @mohammadsamir2713 5 років тому +14

    you are always one of the best

  • @BiancaAguglia
    @BiancaAguglia 5 років тому +3

    I'm a beginner and I don't understand much of your scripts, but this whole system you created seems very well thought out and very well organized. Thank you for sharing it. I'm sure I'll refer to it often while trying to build something similar for myself. 😊 (BTW: You're doing a wonderful job with your channel.)

    • @coreyms
      @coreyms  5 років тому +1

      Thanks, Bianca!

  • @mrkasuj
    @mrkasuj 5 років тому +1

    Thank you Corey. Great video.

  • @menworkharder
    @menworkharder 4 роки тому +1

    This is Brilliant! Thanks a lot!

  • @Jo-id9zm
    @Jo-id9zm 5 років тому +1

    You're doing God's work, Corey!

  • @j.4880
    @j.4880 3 роки тому

    This is goddamn brilliant!

  • @neelpatel8472
    @neelpatel8472 3 роки тому

    Exceptional !!!

  • @BrianClincy
    @BrianClincy 3 роки тому

    Hey Corey I created a pull request that updates the homebrew cask install.

  • @muthuhari8875
    @muthuhari8875 5 років тому +8

    Hi Corey please do videos on microservices.

  • @lykourgos.tsirikos
    @lykourgos.tsirikos 2 роки тому

    Very insightful! Would be nice if we could install like this and any browser extensions or the browser settings as well 😁

  • @dinobulja
    @dinobulja 3 роки тому

    how would I install for example WAS Liberty server?

  • @j.4880
    @j.4880 3 роки тому

    You can use "mas" rather than homebrew to install normal applications right?

  • @iTechDhaval
    @iTechDhaval 4 роки тому

    Sublime script ran while you executed install script. I believe it couldn’t copy your settings file because sublime may have to create default user settings directory when you open it first time. I am just guessing it, I will verify once I receive my new MacBook Pro 16 inch in couple of week or will get some spare time validate on my Hackintosh. I really liked your way of clean code and configuration management. Keep it up 👍🏼

  • @josephlyons3393
    @josephlyons3393 5 років тому +4

    Hey Corey, I’ve been using Homebrew for a few years now to manage my command line tools, but only just recently discovered brew cask, through your last video. I was fairly excited about the idea of writing a shell script to automate the installation of oh software; even more excited when I saw the list of available software that can be installed through brew cask, which covers 99 percent of what I need.
    I then started to wonder how safe this all was. To my knowledge, these individual brew cask commands are maintained by 3rd party individuals and not the actual companies themselves. It turns out that the maintainers is Homebrew releases multiple statements of them not screening any potential malware from these brew cask installations and that it is mostly up to you to know this and figure it out. There have been cases of people bundling malware with the software. This whole thing sort of turned me off from the idea.
    What is your stance on all of this?

    • @jamesblock8384
      @jamesblock8384 4 роки тому

      Im questioning using brew at all honestly. I don't know if you noticed but brew actually rewrites the permissions on usr/local/bin which is first in the path variable. This essentially means that if you write a command or install a command with the same name as an existing command then the new installed command will be called instead of the system command. Imagine if someone wrote a command that mimicked the system sudo command while recording your admin password, shipping the password off somewhere and then removing any evidence before finally passing the command down to the system sudo command. Now someone has complete admin access to your system without you being any the wiser.... Idk how accurate that example is but its outlined in an article here
      applehelpwriter.com/2018/03/21/how-homebrew-invites-users-to-get-pwned/

  • @branhoff
    @branhoff 3 роки тому

    I tried running these bash scripts on my new Mac. But I got the error that the Cask command was "unknown". Has this been updated? Looks like cask as a command has been deprecated?

  • @blekota1974
    @blekota1974 4 роки тому

    Great tutorials, but I suggest update (on github):
    brew casc
    as it raises:
    Error: Calling brew cask install is disabled! Use brew install [--cask] instead.

  • @dinobulja
    @dinobulja 3 роки тому

    In your brew.sh, you have things like brew cask install firefox. But how do I know what should I install. Say I want to install JDK11. I dont think brew cask install jdk11 would be interpreted by brew as what I think jdk11 is. How do you make sure it is going to really install jdk11? Another example, how would I install Eclipse Oxygen 3A for example. So, how is that "firefox" in the command mapped to the correct package you are trying to install? Thanks

  • @rohitbhanot7809
    @rohitbhanot7809 5 років тому +1

    I have something very similar for my Ubuntu setup, for me it updates my Ubuntu, installs bunch of utility software, registers my new machine's ssh key to my github, and finally download/install/configure things like tmux/zsh/vim/conda/pycharm etc. But yeah even I want to try Ansible for this, because managing bunch of bash scripts is cumbersome.

  • @coreycarter5668
    @coreycarter5668 5 років тому

    Merry Christmas, everyone!

  • @mygoogle3560
    @mygoogle3560 2 роки тому

    It says that brew install cask is no longer used but when i tried to use the new command it won't let me install because there's already a binary at /usr/loca/bin/subl for sublime. What should I do?

    • @mygoogle3560
      @mygoogle3560 2 роки тому

      no packages or software was installed as seen in this video.

  • @jeevangangarde435
    @jeevangangarde435 5 років тому +4

    Great video. Please do the same for linux systems.

  • @WhiterockFTP
    @WhiterockFTP 4 роки тому

    why copy the sublime settings instead of symlinking them? :)

  • @stealthyoda1454
    @stealthyoda1454 2 роки тому

    Hi Corey, I am very new, but getting a lot out of your videos. Started with your "VS Code, MacOS Python Development" and just watched through this video. I know it is a newbie question but, what are you using to create your script files that are committed to Git? Thanks

  • @quantum-t
    @quantum-t 5 років тому +1

    thx, Corey

  • @emilraji4769
    @emilraji4769 5 років тому

    Corey for mac you can do a screenrecord within quicktime

    • @coreyms
      @coreyms  5 років тому

      I used to use QuickTime, but it wasn’t as consistent as Camtasia for me. I would occasionally get bad audio with my mic.

  • @md-ayaz
    @md-ayaz 4 роки тому

    Corey, is there any way to get "up arrow" history search of zsh in bash?

  • @delllatitude299
    @delllatitude299 5 років тому +2

    to follow this video i need to buy mac :(
    heart broken video :(
    btw concept is awesome and your teaching is always Fab

    • @ulfgj
      @ulfgj 5 років тому

      package managers for windows: chocolatey.org/ & scoop.sh/

  • @gongfengliu4332
    @gongfengliu4332 5 років тому +3

    Hi Corey, your Python courses are very very great ! we all like it ! so...Will you publish Java courses ? 😋😋

  • @smjure
    @smjure 5 років тому

    Great video! Some similar video for Windows via e.g. '.bat' file would be awesome !

  • @peace-ye2lm
    @peace-ye2lm 3 роки тому

    Please come up with some project videos on python it would be really very helpful for us.

  • @reshadaziz2856
    @reshadaziz2856 5 років тому

    @Corey Schafer, have you tried vscode? If so, how did you like it? Cause I used to like sublime as well before I tried vscode.

    • @coreyms
      @coreyms  5 років тому +2

      Hey there. I’m going to do a video on VSCode soon. I’ve heard too many good things about it lately

  • @me4jas
    @me4jas 4 роки тому

    Only guy whose videos have to slow down to watch instead of playing at 1.5x

  • @midniteb0ne349
    @midniteb0ne349 5 років тому

    Love it, but I have jsut moved to windows, could you make a similar video for windows. Heard chocolatey is amazing.

  • @marveltv5341
    @marveltv5341 5 років тому

    Still it's showing python 3.6.1
    Whenever I type python 3 on terminal

  • @rahulparmar208
    @rahulparmar208 5 років тому

    Please explain us all the 3 types of inheritance in django with examples...

  • @المحققكونانالجزءالتاسع-ث4ق

    please do docker with python

  • @eljefe919
    @eljefe919 5 років тому +1

    Please Deep Learning Machine Learning python 🐍 tutorials Corey! :)

  • @tarasco2010
    @tarasco2010 4 роки тому

    Hello, I think I realized why it is not working the automatic installation of Sublime Text's packages. I tested on my computer and I think it is because you are putting the "installed_packages" on Preferences.sublime-settings but it should be on Package Control.sublime-settings. I didn't understand why do you have that file as a compressed file, I think maybe it is there the problem.
    Here is the documentation of Sublime Text Package Control. packagecontrol.io/docs/syncing
    I share what i have on that file if it helps you,
    {
    "bootstrapped": true,
    "in_process_packages":
    [
    ],
    "installed_packages":
    [
    "A File Icon",
    "Anaconda",
    "BracketHighlighter",
    "Compare Side-By-Side",
    "JSON Reindent",
    "Material Theme",
    "Package Control",
    "SideBarEnhancements"
    ]
    }
    Wish it works.
    Sorry if I have any English mistake
    Bye

  • @squid11160
    @squid11160 5 років тому +2

    Have you heard of our lord and savior Ansible?

    • @coreyms
      @coreyms  5 років тому +2

      Yeah, I love Ansible. I used it a lot to set up servers at my old job. I could definitely convert these scripts over to Ansible, but I just haven't taken the time to do that. I've been meaning to create a tutorial on Ansible for some time now. Very nice tool for this kind of work.

    • @squid11160
      @squid11160 5 років тому +1

      @@coreyms I got a new laptop on Sunday, and I just added it to the inventory to the appropriate group and ran my usual playbook that handles bootstrapping. Feels so good :)

    • @squid11160
      @squid11160 5 років тому +1

      Also: I don't know when you last used Ansible, but it sucks way less after version 2.5. It's 2.7 right now

    • @coreyms
      @coreyms  5 років тому +1

      Milos Kaurin It’s probably been a year since I’ve used it heavily. So I don’t know what version it was then. I’ll likely dive back into it soon to do a video on it and see what’s changed.

  • @andres21aj
    @andres21aj 5 років тому

    567

  • @iTechDhaval
    @iTechDhaval 4 роки тому

    Sublime script ran while you executed install script. I believe it couldn’t copy your settings file because sublime may have to create default user settings directory when you open it first time. I am just guessing it, I will verify once I receive my new MacBook Pro 16 inch in couple of week or will get some spare time validate on my Hackintosh. I really liked your way of clean code and configuration management. Keep it up 👍🏼