Snap applications don't show up after re-login using fish shell












4














On Ubuntu 18.04 I've changed my shell to fish via



chsh -s `which fish`


I've installed Maillspring and Visual Studio Code snap apps, they installed fine and could be launched from the dash initially, but after logging in and logging back out none of them showed up in the dash anymore.



Searching for them in software store shows that are installed and I can launch them from there.



Why will the default shell matter for this?










share|improve this question
























  • Updated answer based on your comment.
    – Elder Geek
    May 10 at 16:04










  • @calin Can you provide examples of snap packages you have installed and do not show up after re-login?
    – estibordo
    May 14 at 22:11










  • Which version of Ubuntu? Do the snaps run fine when run from the fish shell?
    – muru
    May 15 at 8:17










  • @estibordo I did.
    – Calin
    May 15 at 9:31
















4














On Ubuntu 18.04 I've changed my shell to fish via



chsh -s `which fish`


I've installed Maillspring and Visual Studio Code snap apps, they installed fine and could be launched from the dash initially, but after logging in and logging back out none of them showed up in the dash anymore.



Searching for them in software store shows that are installed and I can launch them from there.



Why will the default shell matter for this?










share|improve this question
























  • Updated answer based on your comment.
    – Elder Geek
    May 10 at 16:04










  • @calin Can you provide examples of snap packages you have installed and do not show up after re-login?
    – estibordo
    May 14 at 22:11










  • Which version of Ubuntu? Do the snaps run fine when run from the fish shell?
    – muru
    May 15 at 8:17










  • @estibordo I did.
    – Calin
    May 15 at 9:31














4












4








4


1





On Ubuntu 18.04 I've changed my shell to fish via



chsh -s `which fish`


I've installed Maillspring and Visual Studio Code snap apps, they installed fine and could be launched from the dash initially, but after logging in and logging back out none of them showed up in the dash anymore.



Searching for them in software store shows that are installed and I can launch them from there.



Why will the default shell matter for this?










share|improve this question















On Ubuntu 18.04 I've changed my shell to fish via



chsh -s `which fish`


I've installed Maillspring and Visual Studio Code snap apps, they installed fine and could be launched from the dash initially, but after logging in and logging back out none of them showed up in the dash anymore.



Searching for them in software store shows that are installed and I can launch them from there.



Why will the default shell matter for this?







unity-dash snap fish






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited May 15 at 14:03

























asked May 6 at 0:29









Calin

3002315




3002315












  • Updated answer based on your comment.
    – Elder Geek
    May 10 at 16:04










  • @calin Can you provide examples of snap packages you have installed and do not show up after re-login?
    – estibordo
    May 14 at 22:11










  • Which version of Ubuntu? Do the snaps run fine when run from the fish shell?
    – muru
    May 15 at 8:17










  • @estibordo I did.
    – Calin
    May 15 at 9:31


















  • Updated answer based on your comment.
    – Elder Geek
    May 10 at 16:04










  • @calin Can you provide examples of snap packages you have installed and do not show up after re-login?
    – estibordo
    May 14 at 22:11










  • Which version of Ubuntu? Do the snaps run fine when run from the fish shell?
    – muru
    May 15 at 8:17










  • @estibordo I did.
    – Calin
    May 15 at 9:31
















Updated answer based on your comment.
– Elder Geek
May 10 at 16:04




Updated answer based on your comment.
– Elder Geek
May 10 at 16:04












@calin Can you provide examples of snap packages you have installed and do not show up after re-login?
– estibordo
May 14 at 22:11




@calin Can you provide examples of snap packages you have installed and do not show up after re-login?
– estibordo
May 14 at 22:11












Which version of Ubuntu? Do the snaps run fine when run from the fish shell?
– muru
May 15 at 8:17




Which version of Ubuntu? Do the snaps run fine when run from the fish shell?
– muru
May 15 at 8:17












@estibordo I did.
– Calin
May 15 at 9:31




@estibordo I did.
– Calin
May 15 at 9:31










3 Answers
3






active

oldest

votes


















3





+100









The command you had originally in your question chsh -s which bash was as you say a typo which caused a great deal of confusion around your question. Even if it had been properly formed with the ` symbols around which bash as shown below.



enter image description here
it would change the shell to bash (the default). To change the shell to fish use



enter image description here
or simply use the command chsh and enter the path to the shell you want to use. See below:



me@zippy-64bit:~$ chsh
Password:
Changing the login shell for me
Enter the new value, or press ENTER for the default
Login Shell [/bin/bash]:


For more information on the fish shell see this.



EDIT: Regarding snap packages: Will the default shell matter? the answer is possibly, as it depends on the assumptions made by and the approach taken by the programmer. Refer to the differences in how bash and how fish handle things in the previous link. For example fish has no implicit subshell which can cause surprising side effects in variable assignment for the programmer that is expecting behavior similar to bash. There's a good example of an expectation of an implicit subshell in the question here.



Why? In an attempt to clarify it appears that the concept of inheritance is handled differently between fish and other more common shells like bash. My understanding is that this can result in unexpected behavior from pipes, loops, and functions (All of which are commonly used programming strategies).



The programmer may also be relying on shell builtins which either may not exist in fish or may be implemented in an unexpected fashion.



Sources:




  • man chsh


  • fish on Wikipedia

  • subshells on Unix & Linux


  • Related post on SuperUser.com







share|improve this answer























  • +10 rep already and another +100 coming! :O :O :O
    – Fabby
    May 9 at 22:21










  • @Fabby Wow. That's unexpected. I just stumbled across it in the review queue and thought perhaps I could help.
    – Elder Geek
    May 9 at 23:33










  • Good point, made a typo but still this is not the answer to my question
    – Calin
    May 10 at 8:21






  • 1




    @Calin When I reviewed your question, it had 2 close votes assigned to it "Unclear what you're asking". Mentioning the exact applications would help as they might be console apps.
    – Fabby
    May 10 at 9:44










  • Updated answer.
    – Elder Geek
    May 10 at 15:53



















0














Same problem here (Ubuntu 18.10): after chsh -s `which fish`, Gnome Shell does not find snapp apps anymore, even after adding /snap/bin to the $PATH.



My workaround:




  • open terminal

  • go to Preferences, click on your profile then command tab, tick "run a custom command instead of my shell" then in custom command put fish.

  • do this for every profile


enter image description here



After that, starting Gnome-Terminal (either from Gnome Shell or with Ctrl+Alt+T) will launch the Fish shell, but the system shell will still be Bash so nothing breaks.



However this means that other applications spawning a user-facing shell (Visual Studio Code for instance) may require customization as well to use Fish instead of Bash.






share|improve this answer































    -1














    The snaps that you have installed, can be found in /snap/bin/
    You need to have that directory in your $PATH.



    Ubuntu automatically adds /snap/bin to your $PATH.
    It happens in /etc/profile.d/apps-bin-path.sh which runs when you get a login shell.



    I checked, and fish also adds /snap/bin into $PATH so normally it should be fine.



    Can you show us the output of the command



    echo $PATH


    If the output has /snap/bin, then congratulations you have found a bug in Ubuntu and you can file a report on Launchpad for it.



    addition: Ubuntu internally probably uses $SHELL for some of the scripting. The fish shell is not 100% compatible with bash and it looks like this is the cause of the problem. It is a common issue when you change your login shell to something other than bash. See, for example, this report https://youtrack.jetbrains.com/issue/CPP-2919 with users changing their shell to /bin/tcsh.



    You need to file a bug report to Ubuntu so that someone investigates and fixes the internal scripting to work with fish. If you really love fish, that's what you need to do. ;-)






    share|improve this answer



















    • 1




      How do you explain that they "could be launched from the dash initially" then?
      – Elder Geek
      May 14 at 1:20










    • @Calin said that when they logged out and logged in again, then it stopped working. That makes sense, because the shell information is updated systemwide only when you re-login. The other thing that mystifies me, is that the command was chsh -s fish. That means that the user changed the login shell for root, not for the non-root user account. Still a bug, but a more delicate one.
      – Simos
      May 15 at 10:24










    • The only way that command would change the login shell for root would be if the user was logged in as root when it was issued. it changes the current login shell and not another. See man chsh for more information. Cheers! ;-)
      – Elder Geek
      May 15 at 20:13










    • FYI. Changing your shell doesn't change your path. ;-)
      – Elder Geek
      May 17 at 22:06










    • ;-) What I said was that if the $PATH remains the same, then it is a bug in Ubuntu, and that would require a bug report. The reason is that the scripts in Ubuntu use $SHELL to perform tasks, and fish is not 100% compatible with bash. Such an issue is common in Unix/Linux, here is another example, youtrack.jetbrains.com/issue/CPP-2919 The OP gave up and changed back the login $SHELL to bash. No more fish for them.
      – Simos
      May 19 at 7:34











    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "89"
    };
    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',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    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
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1032581%2fsnap-applications-dont-show-up-after-re-login-using-fish-shell%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    3 Answers
    3






    active

    oldest

    votes








    3 Answers
    3






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    3





    +100









    The command you had originally in your question chsh -s which bash was as you say a typo which caused a great deal of confusion around your question. Even if it had been properly formed with the ` symbols around which bash as shown below.



    enter image description here
    it would change the shell to bash (the default). To change the shell to fish use



    enter image description here
    or simply use the command chsh and enter the path to the shell you want to use. See below:



    me@zippy-64bit:~$ chsh
    Password:
    Changing the login shell for me
    Enter the new value, or press ENTER for the default
    Login Shell [/bin/bash]:


    For more information on the fish shell see this.



    EDIT: Regarding snap packages: Will the default shell matter? the answer is possibly, as it depends on the assumptions made by and the approach taken by the programmer. Refer to the differences in how bash and how fish handle things in the previous link. For example fish has no implicit subshell which can cause surprising side effects in variable assignment for the programmer that is expecting behavior similar to bash. There's a good example of an expectation of an implicit subshell in the question here.



    Why? In an attempt to clarify it appears that the concept of inheritance is handled differently between fish and other more common shells like bash. My understanding is that this can result in unexpected behavior from pipes, loops, and functions (All of which are commonly used programming strategies).



    The programmer may also be relying on shell builtins which either may not exist in fish or may be implemented in an unexpected fashion.



    Sources:




    • man chsh


    • fish on Wikipedia

    • subshells on Unix & Linux


    • Related post on SuperUser.com







    share|improve this answer























    • +10 rep already and another +100 coming! :O :O :O
      – Fabby
      May 9 at 22:21










    • @Fabby Wow. That's unexpected. I just stumbled across it in the review queue and thought perhaps I could help.
      – Elder Geek
      May 9 at 23:33










    • Good point, made a typo but still this is not the answer to my question
      – Calin
      May 10 at 8:21






    • 1




      @Calin When I reviewed your question, it had 2 close votes assigned to it "Unclear what you're asking". Mentioning the exact applications would help as they might be console apps.
      – Fabby
      May 10 at 9:44










    • Updated answer.
      – Elder Geek
      May 10 at 15:53
















    3





    +100









    The command you had originally in your question chsh -s which bash was as you say a typo which caused a great deal of confusion around your question. Even if it had been properly formed with the ` symbols around which bash as shown below.



    enter image description here
    it would change the shell to bash (the default). To change the shell to fish use



    enter image description here
    or simply use the command chsh and enter the path to the shell you want to use. See below:



    me@zippy-64bit:~$ chsh
    Password:
    Changing the login shell for me
    Enter the new value, or press ENTER for the default
    Login Shell [/bin/bash]:


    For more information on the fish shell see this.



    EDIT: Regarding snap packages: Will the default shell matter? the answer is possibly, as it depends on the assumptions made by and the approach taken by the programmer. Refer to the differences in how bash and how fish handle things in the previous link. For example fish has no implicit subshell which can cause surprising side effects in variable assignment for the programmer that is expecting behavior similar to bash. There's a good example of an expectation of an implicit subshell in the question here.



    Why? In an attempt to clarify it appears that the concept of inheritance is handled differently between fish and other more common shells like bash. My understanding is that this can result in unexpected behavior from pipes, loops, and functions (All of which are commonly used programming strategies).



    The programmer may also be relying on shell builtins which either may not exist in fish or may be implemented in an unexpected fashion.



    Sources:




    • man chsh


    • fish on Wikipedia

    • subshells on Unix & Linux


    • Related post on SuperUser.com







    share|improve this answer























    • +10 rep already and another +100 coming! :O :O :O
      – Fabby
      May 9 at 22:21










    • @Fabby Wow. That's unexpected. I just stumbled across it in the review queue and thought perhaps I could help.
      – Elder Geek
      May 9 at 23:33










    • Good point, made a typo but still this is not the answer to my question
      – Calin
      May 10 at 8:21






    • 1




      @Calin When I reviewed your question, it had 2 close votes assigned to it "Unclear what you're asking". Mentioning the exact applications would help as they might be console apps.
      – Fabby
      May 10 at 9:44










    • Updated answer.
      – Elder Geek
      May 10 at 15:53














    3





    +100







    3





    +100



    3




    +100




    The command you had originally in your question chsh -s which bash was as you say a typo which caused a great deal of confusion around your question. Even if it had been properly formed with the ` symbols around which bash as shown below.



    enter image description here
    it would change the shell to bash (the default). To change the shell to fish use



    enter image description here
    or simply use the command chsh and enter the path to the shell you want to use. See below:



    me@zippy-64bit:~$ chsh
    Password:
    Changing the login shell for me
    Enter the new value, or press ENTER for the default
    Login Shell [/bin/bash]:


    For more information on the fish shell see this.



    EDIT: Regarding snap packages: Will the default shell matter? the answer is possibly, as it depends on the assumptions made by and the approach taken by the programmer. Refer to the differences in how bash and how fish handle things in the previous link. For example fish has no implicit subshell which can cause surprising side effects in variable assignment for the programmer that is expecting behavior similar to bash. There's a good example of an expectation of an implicit subshell in the question here.



    Why? In an attempt to clarify it appears that the concept of inheritance is handled differently between fish and other more common shells like bash. My understanding is that this can result in unexpected behavior from pipes, loops, and functions (All of which are commonly used programming strategies).



    The programmer may also be relying on shell builtins which either may not exist in fish or may be implemented in an unexpected fashion.



    Sources:




    • man chsh


    • fish on Wikipedia

    • subshells on Unix & Linux


    • Related post on SuperUser.com







    share|improve this answer














    The command you had originally in your question chsh -s which bash was as you say a typo which caused a great deal of confusion around your question. Even if it had been properly formed with the ` symbols around which bash as shown below.



    enter image description here
    it would change the shell to bash (the default). To change the shell to fish use



    enter image description here
    or simply use the command chsh and enter the path to the shell you want to use. See below:



    me@zippy-64bit:~$ chsh
    Password:
    Changing the login shell for me
    Enter the new value, or press ENTER for the default
    Login Shell [/bin/bash]:


    For more information on the fish shell see this.



    EDIT: Regarding snap packages: Will the default shell matter? the answer is possibly, as it depends on the assumptions made by and the approach taken by the programmer. Refer to the differences in how bash and how fish handle things in the previous link. For example fish has no implicit subshell which can cause surprising side effects in variable assignment for the programmer that is expecting behavior similar to bash. There's a good example of an expectation of an implicit subshell in the question here.



    Why? In an attempt to clarify it appears that the concept of inheritance is handled differently between fish and other more common shells like bash. My understanding is that this can result in unexpected behavior from pipes, loops, and functions (All of which are commonly used programming strategies).



    The programmer may also be relying on shell builtins which either may not exist in fish or may be implemented in an unexpected fashion.



    Sources:




    • man chsh


    • fish on Wikipedia

    • subshells on Unix & Linux


    • Related post on SuperUser.com








    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited May 16 at 15:34

























    answered May 9 at 16:08









    Elder Geek

    26.4k952125




    26.4k952125












    • +10 rep already and another +100 coming! :O :O :O
      – Fabby
      May 9 at 22:21










    • @Fabby Wow. That's unexpected. I just stumbled across it in the review queue and thought perhaps I could help.
      – Elder Geek
      May 9 at 23:33










    • Good point, made a typo but still this is not the answer to my question
      – Calin
      May 10 at 8:21






    • 1




      @Calin When I reviewed your question, it had 2 close votes assigned to it "Unclear what you're asking". Mentioning the exact applications would help as they might be console apps.
      – Fabby
      May 10 at 9:44










    • Updated answer.
      – Elder Geek
      May 10 at 15:53


















    • +10 rep already and another +100 coming! :O :O :O
      – Fabby
      May 9 at 22:21










    • @Fabby Wow. That's unexpected. I just stumbled across it in the review queue and thought perhaps I could help.
      – Elder Geek
      May 9 at 23:33










    • Good point, made a typo but still this is not the answer to my question
      – Calin
      May 10 at 8:21






    • 1




      @Calin When I reviewed your question, it had 2 close votes assigned to it "Unclear what you're asking". Mentioning the exact applications would help as they might be console apps.
      – Fabby
      May 10 at 9:44










    • Updated answer.
      – Elder Geek
      May 10 at 15:53
















    +10 rep already and another +100 coming! :O :O :O
    – Fabby
    May 9 at 22:21




    +10 rep already and another +100 coming! :O :O :O
    – Fabby
    May 9 at 22:21












    @Fabby Wow. That's unexpected. I just stumbled across it in the review queue and thought perhaps I could help.
    – Elder Geek
    May 9 at 23:33




    @Fabby Wow. That's unexpected. I just stumbled across it in the review queue and thought perhaps I could help.
    – Elder Geek
    May 9 at 23:33












    Good point, made a typo but still this is not the answer to my question
    – Calin
    May 10 at 8:21




    Good point, made a typo but still this is not the answer to my question
    – Calin
    May 10 at 8:21




    1




    1




    @Calin When I reviewed your question, it had 2 close votes assigned to it "Unclear what you're asking". Mentioning the exact applications would help as they might be console apps.
    – Fabby
    May 10 at 9:44




    @Calin When I reviewed your question, it had 2 close votes assigned to it "Unclear what you're asking". Mentioning the exact applications would help as they might be console apps.
    – Fabby
    May 10 at 9:44












    Updated answer.
    – Elder Geek
    May 10 at 15:53




    Updated answer.
    – Elder Geek
    May 10 at 15:53













    0














    Same problem here (Ubuntu 18.10): after chsh -s `which fish`, Gnome Shell does not find snapp apps anymore, even after adding /snap/bin to the $PATH.



    My workaround:




    • open terminal

    • go to Preferences, click on your profile then command tab, tick "run a custom command instead of my shell" then in custom command put fish.

    • do this for every profile


    enter image description here



    After that, starting Gnome-Terminal (either from Gnome Shell or with Ctrl+Alt+T) will launch the Fish shell, but the system shell will still be Bash so nothing breaks.



    However this means that other applications spawning a user-facing shell (Visual Studio Code for instance) may require customization as well to use Fish instead of Bash.






    share|improve this answer




























      0














      Same problem here (Ubuntu 18.10): after chsh -s `which fish`, Gnome Shell does not find snapp apps anymore, even after adding /snap/bin to the $PATH.



      My workaround:




      • open terminal

      • go to Preferences, click on your profile then command tab, tick "run a custom command instead of my shell" then in custom command put fish.

      • do this for every profile


      enter image description here



      After that, starting Gnome-Terminal (either from Gnome Shell or with Ctrl+Alt+T) will launch the Fish shell, but the system shell will still be Bash so nothing breaks.



      However this means that other applications spawning a user-facing shell (Visual Studio Code for instance) may require customization as well to use Fish instead of Bash.






      share|improve this answer


























        0












        0








        0






        Same problem here (Ubuntu 18.10): after chsh -s `which fish`, Gnome Shell does not find snapp apps anymore, even after adding /snap/bin to the $PATH.



        My workaround:




        • open terminal

        • go to Preferences, click on your profile then command tab, tick "run a custom command instead of my shell" then in custom command put fish.

        • do this for every profile


        enter image description here



        After that, starting Gnome-Terminal (either from Gnome Shell or with Ctrl+Alt+T) will launch the Fish shell, but the system shell will still be Bash so nothing breaks.



        However this means that other applications spawning a user-facing shell (Visual Studio Code for instance) may require customization as well to use Fish instead of Bash.






        share|improve this answer














        Same problem here (Ubuntu 18.10): after chsh -s `which fish`, Gnome Shell does not find snapp apps anymore, even after adding /snap/bin to the $PATH.



        My workaround:




        • open terminal

        • go to Preferences, click on your profile then command tab, tick "run a custom command instead of my shell" then in custom command put fish.

        • do this for every profile


        enter image description here



        After that, starting Gnome-Terminal (either from Gnome Shell or with Ctrl+Alt+T) will launch the Fish shell, but the system shell will still be Bash so nothing breaks.



        However this means that other applications spawning a user-facing shell (Visual Studio Code for instance) may require customization as well to use Fish instead of Bash.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited 2 days ago









        mature

        1,629422




        1,629422










        answered Dec 23 at 15:31









        Cédric Van Rompay

        1165




        1165























            -1














            The snaps that you have installed, can be found in /snap/bin/
            You need to have that directory in your $PATH.



            Ubuntu automatically adds /snap/bin to your $PATH.
            It happens in /etc/profile.d/apps-bin-path.sh which runs when you get a login shell.



            I checked, and fish also adds /snap/bin into $PATH so normally it should be fine.



            Can you show us the output of the command



            echo $PATH


            If the output has /snap/bin, then congratulations you have found a bug in Ubuntu and you can file a report on Launchpad for it.



            addition: Ubuntu internally probably uses $SHELL for some of the scripting. The fish shell is not 100% compatible with bash and it looks like this is the cause of the problem. It is a common issue when you change your login shell to something other than bash. See, for example, this report https://youtrack.jetbrains.com/issue/CPP-2919 with users changing their shell to /bin/tcsh.



            You need to file a bug report to Ubuntu so that someone investigates and fixes the internal scripting to work with fish. If you really love fish, that's what you need to do. ;-)






            share|improve this answer



















            • 1




              How do you explain that they "could be launched from the dash initially" then?
              – Elder Geek
              May 14 at 1:20










            • @Calin said that when they logged out and logged in again, then it stopped working. That makes sense, because the shell information is updated systemwide only when you re-login. The other thing that mystifies me, is that the command was chsh -s fish. That means that the user changed the login shell for root, not for the non-root user account. Still a bug, but a more delicate one.
              – Simos
              May 15 at 10:24










            • The only way that command would change the login shell for root would be if the user was logged in as root when it was issued. it changes the current login shell and not another. See man chsh for more information. Cheers! ;-)
              – Elder Geek
              May 15 at 20:13










            • FYI. Changing your shell doesn't change your path. ;-)
              – Elder Geek
              May 17 at 22:06










            • ;-) What I said was that if the $PATH remains the same, then it is a bug in Ubuntu, and that would require a bug report. The reason is that the scripts in Ubuntu use $SHELL to perform tasks, and fish is not 100% compatible with bash. Such an issue is common in Unix/Linux, here is another example, youtrack.jetbrains.com/issue/CPP-2919 The OP gave up and changed back the login $SHELL to bash. No more fish for them.
              – Simos
              May 19 at 7:34
















            -1














            The snaps that you have installed, can be found in /snap/bin/
            You need to have that directory in your $PATH.



            Ubuntu automatically adds /snap/bin to your $PATH.
            It happens in /etc/profile.d/apps-bin-path.sh which runs when you get a login shell.



            I checked, and fish also adds /snap/bin into $PATH so normally it should be fine.



            Can you show us the output of the command



            echo $PATH


            If the output has /snap/bin, then congratulations you have found a bug in Ubuntu and you can file a report on Launchpad for it.



            addition: Ubuntu internally probably uses $SHELL for some of the scripting. The fish shell is not 100% compatible with bash and it looks like this is the cause of the problem. It is a common issue when you change your login shell to something other than bash. See, for example, this report https://youtrack.jetbrains.com/issue/CPP-2919 with users changing their shell to /bin/tcsh.



            You need to file a bug report to Ubuntu so that someone investigates and fixes the internal scripting to work with fish. If you really love fish, that's what you need to do. ;-)






            share|improve this answer



















            • 1




              How do you explain that they "could be launched from the dash initially" then?
              – Elder Geek
              May 14 at 1:20










            • @Calin said that when they logged out and logged in again, then it stopped working. That makes sense, because the shell information is updated systemwide only when you re-login. The other thing that mystifies me, is that the command was chsh -s fish. That means that the user changed the login shell for root, not for the non-root user account. Still a bug, but a more delicate one.
              – Simos
              May 15 at 10:24










            • The only way that command would change the login shell for root would be if the user was logged in as root when it was issued. it changes the current login shell and not another. See man chsh for more information. Cheers! ;-)
              – Elder Geek
              May 15 at 20:13










            • FYI. Changing your shell doesn't change your path. ;-)
              – Elder Geek
              May 17 at 22:06










            • ;-) What I said was that if the $PATH remains the same, then it is a bug in Ubuntu, and that would require a bug report. The reason is that the scripts in Ubuntu use $SHELL to perform tasks, and fish is not 100% compatible with bash. Such an issue is common in Unix/Linux, here is another example, youtrack.jetbrains.com/issue/CPP-2919 The OP gave up and changed back the login $SHELL to bash. No more fish for them.
              – Simos
              May 19 at 7:34














            -1












            -1








            -1






            The snaps that you have installed, can be found in /snap/bin/
            You need to have that directory in your $PATH.



            Ubuntu automatically adds /snap/bin to your $PATH.
            It happens in /etc/profile.d/apps-bin-path.sh which runs when you get a login shell.



            I checked, and fish also adds /snap/bin into $PATH so normally it should be fine.



            Can you show us the output of the command



            echo $PATH


            If the output has /snap/bin, then congratulations you have found a bug in Ubuntu and you can file a report on Launchpad for it.



            addition: Ubuntu internally probably uses $SHELL for some of the scripting. The fish shell is not 100% compatible with bash and it looks like this is the cause of the problem. It is a common issue when you change your login shell to something other than bash. See, for example, this report https://youtrack.jetbrains.com/issue/CPP-2919 with users changing their shell to /bin/tcsh.



            You need to file a bug report to Ubuntu so that someone investigates and fixes the internal scripting to work with fish. If you really love fish, that's what you need to do. ;-)






            share|improve this answer














            The snaps that you have installed, can be found in /snap/bin/
            You need to have that directory in your $PATH.



            Ubuntu automatically adds /snap/bin to your $PATH.
            It happens in /etc/profile.d/apps-bin-path.sh which runs when you get a login shell.



            I checked, and fish also adds /snap/bin into $PATH so normally it should be fine.



            Can you show us the output of the command



            echo $PATH


            If the output has /snap/bin, then congratulations you have found a bug in Ubuntu and you can file a report on Launchpad for it.



            addition: Ubuntu internally probably uses $SHELL for some of the scripting. The fish shell is not 100% compatible with bash and it looks like this is the cause of the problem. It is a common issue when you change your login shell to something other than bash. See, for example, this report https://youtrack.jetbrains.com/issue/CPP-2919 with users changing their shell to /bin/tcsh.



            You need to file a bug report to Ubuntu so that someone investigates and fixes the internal scripting to work with fish. If you really love fish, that's what you need to do. ;-)







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited May 19 at 7:38

























            answered May 13 at 23:01









            Simos

            1475




            1475








            • 1




              How do you explain that they "could be launched from the dash initially" then?
              – Elder Geek
              May 14 at 1:20










            • @Calin said that when they logged out and logged in again, then it stopped working. That makes sense, because the shell information is updated systemwide only when you re-login. The other thing that mystifies me, is that the command was chsh -s fish. That means that the user changed the login shell for root, not for the non-root user account. Still a bug, but a more delicate one.
              – Simos
              May 15 at 10:24










            • The only way that command would change the login shell for root would be if the user was logged in as root when it was issued. it changes the current login shell and not another. See man chsh for more information. Cheers! ;-)
              – Elder Geek
              May 15 at 20:13










            • FYI. Changing your shell doesn't change your path. ;-)
              – Elder Geek
              May 17 at 22:06










            • ;-) What I said was that if the $PATH remains the same, then it is a bug in Ubuntu, and that would require a bug report. The reason is that the scripts in Ubuntu use $SHELL to perform tasks, and fish is not 100% compatible with bash. Such an issue is common in Unix/Linux, here is another example, youtrack.jetbrains.com/issue/CPP-2919 The OP gave up and changed back the login $SHELL to bash. No more fish for them.
              – Simos
              May 19 at 7:34














            • 1




              How do you explain that they "could be launched from the dash initially" then?
              – Elder Geek
              May 14 at 1:20










            • @Calin said that when they logged out and logged in again, then it stopped working. That makes sense, because the shell information is updated systemwide only when you re-login. The other thing that mystifies me, is that the command was chsh -s fish. That means that the user changed the login shell for root, not for the non-root user account. Still a bug, but a more delicate one.
              – Simos
              May 15 at 10:24










            • The only way that command would change the login shell for root would be if the user was logged in as root when it was issued. it changes the current login shell and not another. See man chsh for more information. Cheers! ;-)
              – Elder Geek
              May 15 at 20:13










            • FYI. Changing your shell doesn't change your path. ;-)
              – Elder Geek
              May 17 at 22:06










            • ;-) What I said was that if the $PATH remains the same, then it is a bug in Ubuntu, and that would require a bug report. The reason is that the scripts in Ubuntu use $SHELL to perform tasks, and fish is not 100% compatible with bash. Such an issue is common in Unix/Linux, here is another example, youtrack.jetbrains.com/issue/CPP-2919 The OP gave up and changed back the login $SHELL to bash. No more fish for them.
              – Simos
              May 19 at 7:34








            1




            1




            How do you explain that they "could be launched from the dash initially" then?
            – Elder Geek
            May 14 at 1:20




            How do you explain that they "could be launched from the dash initially" then?
            – Elder Geek
            May 14 at 1:20












            @Calin said that when they logged out and logged in again, then it stopped working. That makes sense, because the shell information is updated systemwide only when you re-login. The other thing that mystifies me, is that the command was chsh -s fish. That means that the user changed the login shell for root, not for the non-root user account. Still a bug, but a more delicate one.
            – Simos
            May 15 at 10:24




            @Calin said that when they logged out and logged in again, then it stopped working. That makes sense, because the shell information is updated systemwide only when you re-login. The other thing that mystifies me, is that the command was chsh -s fish. That means that the user changed the login shell for root, not for the non-root user account. Still a bug, but a more delicate one.
            – Simos
            May 15 at 10:24












            The only way that command would change the login shell for root would be if the user was logged in as root when it was issued. it changes the current login shell and not another. See man chsh for more information. Cheers! ;-)
            – Elder Geek
            May 15 at 20:13




            The only way that command would change the login shell for root would be if the user was logged in as root when it was issued. it changes the current login shell and not another. See man chsh for more information. Cheers! ;-)
            – Elder Geek
            May 15 at 20:13












            FYI. Changing your shell doesn't change your path. ;-)
            – Elder Geek
            May 17 at 22:06




            FYI. Changing your shell doesn't change your path. ;-)
            – Elder Geek
            May 17 at 22:06












            ;-) What I said was that if the $PATH remains the same, then it is a bug in Ubuntu, and that would require a bug report. The reason is that the scripts in Ubuntu use $SHELL to perform tasks, and fish is not 100% compatible with bash. Such an issue is common in Unix/Linux, here is another example, youtrack.jetbrains.com/issue/CPP-2919 The OP gave up and changed back the login $SHELL to bash. No more fish for them.
            – Simos
            May 19 at 7:34




            ;-) What I said was that if the $PATH remains the same, then it is a bug in Ubuntu, and that would require a bug report. The reason is that the scripts in Ubuntu use $SHELL to perform tasks, and fish is not 100% compatible with bash. Such an issue is common in Unix/Linux, here is another example, youtrack.jetbrains.com/issue/CPP-2919 The OP gave up and changed back the login $SHELL to bash. No more fish for them.
            – Simos
            May 19 at 7:34


















            draft saved

            draft discarded




















































            Thanks for contributing an answer to Ask Ubuntu!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1032581%2fsnap-applications-dont-show-up-after-re-login-using-fish-shell%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Category:香港粉麵

            List *all* the tuples!

            Channel [V]