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

Поделиться
HTML-код
  • Опубликовано: 10 окт 2024

Комментарии • 68

  • @coreyms
    @coreyms  5 лет назад +35

    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!

  • @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)!

  • @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

  • @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!

  • @mohammadsamir2713
    @mohammadsamir2713 5 лет назад +14

    you are always one of the best

  • @romankhripunov6550
    @romankhripunov6550 5 лет назад +8

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

  • @mrkasuj
    @mrkasuj 5 лет назад +1

    Thank you Corey. Great video.

  • @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 😁

  • @gongfengliu4332
    @gongfengliu4332 5 лет назад +3

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

  • @menworkharder
    @menworkharder 4 года назад +1

    This is Brilliant! Thanks a lot!

  • @jeevangangarde435
    @jeevangangarde435 5 лет назад +4

    Great video. Please do the same for linux systems.

  • @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 👍🏼

  • @j.4880
    @j.4880 3 года назад

    This is goddamn brilliant!

  • @neelpatel8472
    @neelpatel8472 3 года назад

    Exceptional !!!

  • @josephlyons3393
    @josephlyons3393 4 года назад +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/

  • @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/

  • @quantum-t
    @quantum-t 5 лет назад +1

    thx, Corey

  • @blekota1974
    @blekota1974 3 года назад

    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.

  • @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.

  • @Jo-id9zm
    @Jo-id9zm 5 лет назад +1

    You're doing God's work, Corey!

  • @coreycarter5668
    @coreycarter5668 5 лет назад

    Merry Christmas, everyone!

  • @smjure
    @smjure 5 лет назад

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

  • @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.

  • @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

  • @peace-ye2lm
    @peace-ye2lm 3 года назад

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

  • @midniteb0ne349
    @midniteb0ne349 5 лет назад

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

  • @BrianClincy
    @BrianClincy 2 года назад

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

  • @j.4880
    @j.4880 3 года назад

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

  • @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

  • @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

  • @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?

  • @dinobulja
    @dinobulja 3 года назад

    how would I install for example WAS Liberty server?

  • @WhiterockFTP
    @WhiterockFTP 4 года назад

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

  • @md-ayaz
    @md-ayaz 4 года назад

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

  • @me4jas
    @me4jas 4 года назад

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

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

    please do docker with python

  • @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.

  • @rahulparmar208
    @rahulparmar208 5 лет назад

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

  • @eljefe919
    @eljefe919 5 лет назад +1

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

  • @marveltv5341
    @marveltv5341 5 лет назад

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

  • @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

  • @yetanotheremail
    @yetanotheremail Год назад

    run this eval $(/opt/homebrew/bin/brew shellenv) in M1 chips

  • @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 👍🏼