Need optimal code for .zshrc to source file after curl

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












I am having issues with my .zshrc file setting up my zplugin for a first-time run. Its purpose is to fetch the installer from zplug github, run the shell install, then source it.



This is my .zshrc file:



# Check if zplug is installed
if [[ ! -d ~/.zplug ]]; then
curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
fi

source ~/.zplug/init.zsh


And this is the output from starting up my terminal:



✔ Checking if your zsh version is newer than 4.1.9 [SUCCEEDED]
✔ Installing zplug to /home/thomas/.zplug [SUCCEEDED]
All processes are successfully completed 🎉
For more information, see http://zplug.sh 🌺
Enjoy zplug!
/home/dwarfoz/.zshrc:source:8: no such file or directory: /home/dwarfoz/.zplug/init.zsh


Install succeeds but sourcing fails :(



So I think this might be some sort of race condition. I put a sleep timer for two seconds after curl.



# Check if zplug is installed
if [[ ! -d ~/.zplug ]]; then
curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
sleep 2
fi

source ~/.zplug/init.zsh


And indeed it works. (terminal output omitted here)



So I'm wondering if there's a way to source the file as soon curl completes -- without waiting some arbitrary amount of time like 2 seconds.









share







New contributor




dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.























    up vote
    0
    down vote

    favorite












    I am having issues with my .zshrc file setting up my zplugin for a first-time run. Its purpose is to fetch the installer from zplug github, run the shell install, then source it.



    This is my .zshrc file:



    # Check if zplug is installed
    if [[ ! -d ~/.zplug ]]; then
    curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
    fi

    source ~/.zplug/init.zsh


    And this is the output from starting up my terminal:



    ✔ Checking if your zsh version is newer than 4.1.9 [SUCCEEDED]
    ✔ Installing zplug to /home/thomas/.zplug [SUCCEEDED]
    All processes are successfully completed 🎉
    For more information, see http://zplug.sh 🌺
    Enjoy zplug!
    /home/dwarfoz/.zshrc:source:8: no such file or directory: /home/dwarfoz/.zplug/init.zsh


    Install succeeds but sourcing fails :(



    So I think this might be some sort of race condition. I put a sleep timer for two seconds after curl.



    # Check if zplug is installed
    if [[ ! -d ~/.zplug ]]; then
    curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
    sleep 2
    fi

    source ~/.zplug/init.zsh


    And indeed it works. (terminal output omitted here)



    So I'm wondering if there's a way to source the file as soon curl completes -- without waiting some arbitrary amount of time like 2 seconds.









    share







    New contributor




    dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.





















      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I am having issues with my .zshrc file setting up my zplugin for a first-time run. Its purpose is to fetch the installer from zplug github, run the shell install, then source it.



      This is my .zshrc file:



      # Check if zplug is installed
      if [[ ! -d ~/.zplug ]]; then
      curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
      fi

      source ~/.zplug/init.zsh


      And this is the output from starting up my terminal:



      ✔ Checking if your zsh version is newer than 4.1.9 [SUCCEEDED]
      ✔ Installing zplug to /home/thomas/.zplug [SUCCEEDED]
      All processes are successfully completed 🎉
      For more information, see http://zplug.sh 🌺
      Enjoy zplug!
      /home/dwarfoz/.zshrc:source:8: no such file or directory: /home/dwarfoz/.zplug/init.zsh


      Install succeeds but sourcing fails :(



      So I think this might be some sort of race condition. I put a sleep timer for two seconds after curl.



      # Check if zplug is installed
      if [[ ! -d ~/.zplug ]]; then
      curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
      sleep 2
      fi

      source ~/.zplug/init.zsh


      And indeed it works. (terminal output omitted here)



      So I'm wondering if there's a way to source the file as soon curl completes -- without waiting some arbitrary amount of time like 2 seconds.









      share







      New contributor




      dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I am having issues with my .zshrc file setting up my zplugin for a first-time run. Its purpose is to fetch the installer from zplug github, run the shell install, then source it.



      This is my .zshrc file:



      # Check if zplug is installed
      if [[ ! -d ~/.zplug ]]; then
      curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
      fi

      source ~/.zplug/init.zsh


      And this is the output from starting up my terminal:



      ✔ Checking if your zsh version is newer than 4.1.9 [SUCCEEDED]
      ✔ Installing zplug to /home/thomas/.zplug [SUCCEEDED]
      All processes are successfully completed 🎉
      For more information, see http://zplug.sh 🌺
      Enjoy zplug!
      /home/dwarfoz/.zshrc:source:8: no such file or directory: /home/dwarfoz/.zplug/init.zsh


      Install succeeds but sourcing fails :(



      So I think this might be some sort of race condition. I put a sleep timer for two seconds after curl.



      # Check if zplug is installed
      if [[ ! -d ~/.zplug ]]; then
      curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
      sleep 2
      fi

      source ~/.zplug/init.zsh


      And indeed it works. (terminal output omitted here)



      So I'm wondering if there's a way to source the file as soon curl completes -- without waiting some arbitrary amount of time like 2 seconds.







      zsh





      share







      New contributor




      dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.










      share







      New contributor




      dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      share



      share






      New contributor




      dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 58 secs ago









      dwarfoz

      1




      1




      New contributor




      dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      dwarfoz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.

























          active

          oldest

          votes











          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "106"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );






          dwarfoz is a new contributor. Be nice, and check out our Code of Conduct.









           

          draft saved


          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f479808%2fneed-optimal-code-for-zshrc-to-source-file-after-curl%23new-answer', 'question_page');

          );

          Post as a guest



































          active

          oldest

          votes













          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          dwarfoz is a new contributor. Be nice, and check out our Code of Conduct.









           

          draft saved


          draft discarded


















          dwarfoz is a new contributor. Be nice, and check out our Code of Conduct.












          dwarfoz is a new contributor. Be nice, and check out our Code of Conduct.











          dwarfoz is a new contributor. Be nice, and check out our Code of Conduct.













           


          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f479808%2fneed-optimal-code-for-zshrc-to-source-file-after-curl%23new-answer', 'question_page');

          );

          Post as a guest













































































          Popular posts from this blog

          How to check contact read email or not when send email to Individual?

          Bahrain

          Postfix configuration issue with fips on centos 7; mailgun relay