Why does apt-get install python3 with a trailing hyphen remove a lot of packages?





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}







8















While is was installing something with the sudo apt-get install command I accidentally accepted the command



sudo apt-get install python3-


(yeah I know it is stupid to just accept this but I did a lot of those and i just continued to click y).



By executing the command I deleted my whole visual desktop of Ubuntu (I just had the plain shell but I recovered the visual desktop by now). I don't know if I am just stupid but nevertheless I want to create awareness that you shouldn't use the command.



If you can explain to me why happened what happened feel free to explain it to me.










share|improve this question









New contributor




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
















  • 6





    Documented features are not bugs.

    – guiverc
    7 hours ago






  • 1





    I’m curious -why- this was decided to be the intended behavior. Seems unnecessary, and as the OP found, destructive.

    – Scot
    1 hour ago






  • 1





    Possible duplicate of "sudo apt -get install foo-" causes removing foo package and everything depends on it && askubuntu.com/questions/880291/apt-get-install-with-removes

    – pomsky
    23 mins ago




















8















While is was installing something with the sudo apt-get install command I accidentally accepted the command



sudo apt-get install python3-


(yeah I know it is stupid to just accept this but I did a lot of those and i just continued to click y).



By executing the command I deleted my whole visual desktop of Ubuntu (I just had the plain shell but I recovered the visual desktop by now). I don't know if I am just stupid but nevertheless I want to create awareness that you shouldn't use the command.



If you can explain to me why happened what happened feel free to explain it to me.










share|improve this question









New contributor




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
















  • 6





    Documented features are not bugs.

    – guiverc
    7 hours ago






  • 1





    I’m curious -why- this was decided to be the intended behavior. Seems unnecessary, and as the OP found, destructive.

    – Scot
    1 hour ago






  • 1





    Possible duplicate of "sudo apt -get install foo-" causes removing foo package and everything depends on it && askubuntu.com/questions/880291/apt-get-install-with-removes

    – pomsky
    23 mins ago
















8












8








8








While is was installing something with the sudo apt-get install command I accidentally accepted the command



sudo apt-get install python3-


(yeah I know it is stupid to just accept this but I did a lot of those and i just continued to click y).



By executing the command I deleted my whole visual desktop of Ubuntu (I just had the plain shell but I recovered the visual desktop by now). I don't know if I am just stupid but nevertheless I want to create awareness that you shouldn't use the command.



If you can explain to me why happened what happened feel free to explain it to me.










share|improve this question









New contributor




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












While is was installing something with the sudo apt-get install command I accidentally accepted the command



sudo apt-get install python3-


(yeah I know it is stupid to just accept this but I did a lot of those and i just continued to click y).



By executing the command I deleted my whole visual desktop of Ubuntu (I just had the plain shell but I recovered the visual desktop by now). I don't know if I am just stupid but nevertheless I want to create awareness that you shouldn't use the command.



If you can explain to me why happened what happened feel free to explain it to me.







command-line apt






share|improve this question









New contributor




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











share|improve this question









New contributor




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









share|improve this question




share|improve this question








edited 23 mins ago









Community

1




1






New contributor




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









asked 10 hours ago









Mettigel4_1Mettigel4_1

471




471




New contributor




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





New contributor





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






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








  • 6





    Documented features are not bugs.

    – guiverc
    7 hours ago






  • 1





    I’m curious -why- this was decided to be the intended behavior. Seems unnecessary, and as the OP found, destructive.

    – Scot
    1 hour ago






  • 1





    Possible duplicate of "sudo apt -get install foo-" causes removing foo package and everything depends on it && askubuntu.com/questions/880291/apt-get-install-with-removes

    – pomsky
    23 mins ago
















  • 6





    Documented features are not bugs.

    – guiverc
    7 hours ago






  • 1





    I’m curious -why- this was decided to be the intended behavior. Seems unnecessary, and as the OP found, destructive.

    – Scot
    1 hour ago






  • 1





    Possible duplicate of "sudo apt -get install foo-" causes removing foo package and everything depends on it && askubuntu.com/questions/880291/apt-get-install-with-removes

    – pomsky
    23 mins ago










6




6





Documented features are not bugs.

– guiverc
7 hours ago





Documented features are not bugs.

– guiverc
7 hours ago




1




1





I’m curious -why- this was decided to be the intended behavior. Seems unnecessary, and as the OP found, destructive.

– Scot
1 hour ago





I’m curious -why- this was decided to be the intended behavior. Seems unnecessary, and as the OP found, destructive.

– Scot
1 hour ago




1




1





Possible duplicate of "sudo apt -get install foo-" causes removing foo package and everything depends on it && askubuntu.com/questions/880291/apt-get-install-with-removes

– pomsky
23 mins ago







Possible duplicate of "sudo apt -get install foo-" causes removing foo package and everything depends on it && askubuntu.com/questions/880291/apt-get-install-with-removes

– pomsky
23 mins ago












2 Answers
2






active

oldest

votes


















21














This is not a bug; this is documented in the man page. From man apt-get's install section1 (emphasis mine):




If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install.




So, when you did:



sudo apt-get install python3-


you've removed the python3 package and all the dependent packages (which includes the packages you mentioned).





Fix:



To re-install the removed packages, go to /var/log/apt/history.log, pick the packages, and run sudo apt-get install on them.



You might also want to peek into /var/log/dpkg.log.





1 If you have less as the man pager, you can go to the install section of man apt-get directly:



LESS='+/^[[:blank:]]+install' man apt-get





share|improve this answer





















  • 6





    It might be worth mentioning that sudo apt-get install ubuntu-desktop will get most of the desktop environment back with a single command, without needing to hunt down individual package names. (Of course that doesn't cover whatever one has installed manually on top of the defaults, but further recovery can proceed in an environment that may be more familiar than the Linux console).

    – Henning Makholm
    7 hours ago





















10














No, you didn't find a bug. From man apt-get:




If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install. These latter features may be used to override decisions made by apt-get's conflict resolution system.




It's intentional. I'm not sure it's good design, but it is worth reading what changes apt proposes before proceeding.



Combined with globbing it may produce some rather... spectacular results at times.






share|improve this answer


























    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
    });


    }
    });






    Mettigel4_1 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%2faskubuntu.com%2fquestions%2f1131958%2fwhy-does-apt-get-install-python3-with-a-trailing-hyphen-remove-a-lot-of-packages%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    21














    This is not a bug; this is documented in the man page. From man apt-get's install section1 (emphasis mine):




    If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install.




    So, when you did:



    sudo apt-get install python3-


    you've removed the python3 package and all the dependent packages (which includes the packages you mentioned).





    Fix:



    To re-install the removed packages, go to /var/log/apt/history.log, pick the packages, and run sudo apt-get install on them.



    You might also want to peek into /var/log/dpkg.log.





    1 If you have less as the man pager, you can go to the install section of man apt-get directly:



    LESS='+/^[[:blank:]]+install' man apt-get





    share|improve this answer





















    • 6





      It might be worth mentioning that sudo apt-get install ubuntu-desktop will get most of the desktop environment back with a single command, without needing to hunt down individual package names. (Of course that doesn't cover whatever one has installed manually on top of the defaults, but further recovery can proceed in an environment that may be more familiar than the Linux console).

      – Henning Makholm
      7 hours ago


















    21














    This is not a bug; this is documented in the man page. From man apt-get's install section1 (emphasis mine):




    If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install.




    So, when you did:



    sudo apt-get install python3-


    you've removed the python3 package and all the dependent packages (which includes the packages you mentioned).





    Fix:



    To re-install the removed packages, go to /var/log/apt/history.log, pick the packages, and run sudo apt-get install on them.



    You might also want to peek into /var/log/dpkg.log.





    1 If you have less as the man pager, you can go to the install section of man apt-get directly:



    LESS='+/^[[:blank:]]+install' man apt-get





    share|improve this answer





















    • 6





      It might be worth mentioning that sudo apt-get install ubuntu-desktop will get most of the desktop environment back with a single command, without needing to hunt down individual package names. (Of course that doesn't cover whatever one has installed manually on top of the defaults, but further recovery can proceed in an environment that may be more familiar than the Linux console).

      – Henning Makholm
      7 hours ago
















    21












    21








    21







    This is not a bug; this is documented in the man page. From man apt-get's install section1 (emphasis mine):




    If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install.




    So, when you did:



    sudo apt-get install python3-


    you've removed the python3 package and all the dependent packages (which includes the packages you mentioned).





    Fix:



    To re-install the removed packages, go to /var/log/apt/history.log, pick the packages, and run sudo apt-get install on them.



    You might also want to peek into /var/log/dpkg.log.





    1 If you have less as the man pager, you can go to the install section of man apt-get directly:



    LESS='+/^[[:blank:]]+install' man apt-get





    share|improve this answer















    This is not a bug; this is documented in the man page. From man apt-get's install section1 (emphasis mine):




    If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install.




    So, when you did:



    sudo apt-get install python3-


    you've removed the python3 package and all the dependent packages (which includes the packages you mentioned).





    Fix:



    To re-install the removed packages, go to /var/log/apt/history.log, pick the packages, and run sudo apt-get install on them.



    You might also want to peek into /var/log/dpkg.log.





    1 If you have less as the man pager, you can go to the install section of man apt-get directly:



    LESS='+/^[[:blank:]]+install' man apt-get






    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited 10 hours ago

























    answered 10 hours ago









    heemaylheemayl

    68.1k11142215




    68.1k11142215








    • 6





      It might be worth mentioning that sudo apt-get install ubuntu-desktop will get most of the desktop environment back with a single command, without needing to hunt down individual package names. (Of course that doesn't cover whatever one has installed manually on top of the defaults, but further recovery can proceed in an environment that may be more familiar than the Linux console).

      – Henning Makholm
      7 hours ago
















    • 6





      It might be worth mentioning that sudo apt-get install ubuntu-desktop will get most of the desktop environment back with a single command, without needing to hunt down individual package names. (Of course that doesn't cover whatever one has installed manually on top of the defaults, but further recovery can proceed in an environment that may be more familiar than the Linux console).

      – Henning Makholm
      7 hours ago










    6




    6





    It might be worth mentioning that sudo apt-get install ubuntu-desktop will get most of the desktop environment back with a single command, without needing to hunt down individual package names. (Of course that doesn't cover whatever one has installed manually on top of the defaults, but further recovery can proceed in an environment that may be more familiar than the Linux console).

    – Henning Makholm
    7 hours ago







    It might be worth mentioning that sudo apt-get install ubuntu-desktop will get most of the desktop environment back with a single command, without needing to hunt down individual package names. (Of course that doesn't cover whatever one has installed manually on top of the defaults, but further recovery can proceed in an environment that may be more familiar than the Linux console).

    – Henning Makholm
    7 hours ago















    10














    No, you didn't find a bug. From man apt-get:




    If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install. These latter features may be used to override decisions made by apt-get's conflict resolution system.




    It's intentional. I'm not sure it's good design, but it is worth reading what changes apt proposes before proceeding.



    Combined with globbing it may produce some rather... spectacular results at times.






    share|improve this answer






























      10














      No, you didn't find a bug. From man apt-get:




      If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install. These latter features may be used to override decisions made by apt-get's conflict resolution system.




      It's intentional. I'm not sure it's good design, but it is worth reading what changes apt proposes before proceeding.



      Combined with globbing it may produce some rather... spectacular results at times.






      share|improve this answer




























        10












        10








        10







        No, you didn't find a bug. From man apt-get:




        If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install. These latter features may be used to override decisions made by apt-get's conflict resolution system.




        It's intentional. I'm not sure it's good design, but it is worth reading what changes apt proposes before proceeding.



        Combined with globbing it may produce some rather... spectacular results at times.






        share|improve this answer















        No, you didn't find a bug. From man apt-get:




        If a hyphen is appended to the package name (with no intervening space), the identified package will be removed if it is installed. Similarly a plus sign can be used to designate a package to install. These latter features may be used to override decisions made by apt-get's conflict resolution system.




        It's intentional. I'm not sure it's good design, but it is worth reading what changes apt proposes before proceeding.



        Combined with globbing it may produce some rather... spectacular results at times.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited 10 hours ago









        N0rbert

        25.1k853118




        25.1k853118










        answered 10 hours ago









        vidarlovidarlo

        10.7k52852




        10.7k52852






















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










            draft saved

            draft discarded


















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













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












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
















            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.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1131958%2fwhy-does-apt-get-install-python3-with-a-trailing-hyphen-remove-a-lot-of-packages%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

            Усть-Каменогорск

            Халкинская богословская школа

            Where does the word Sparryheid come from and mean?