Why does apt-get install python3 with a trailing hyphen remove a lot of packages? [duplicate]apt-get install with '-' (minus / hyphen) removes packages“sudo apt-get install foo-” causes removing foo package and everything depending on itWhy does `apt-get install python-` remove everything?Default path changed after uninstalling python and reinstalling ubuntu-desktopPackages are removed when I use “apt-get install” with a hyphen after the package nameMust execute “sudo su” and then do apt-get update/upgrade/install, prefacing with sudo doesn't workRedirected OutputThe colors when doing “ls” at my ubuntu server diappeared just like thatapt-get remove indicator-bluetooth removes lot of packagesWhy does “sudo apt-get install gpsd” return with errors?How to restore after accidentally apt-get remove python'sudo apt autoremove python3' removed a lot of packages

How deep to place a deadman anchor for a slackline?

Phrase for the opposite of "foolproof"

Any examples of headwear for races with animal ears?

Why do Ichisongas hate elephants and hippos?

How to creep the reader out with what seems like a normal person?

When and why did journal article titles become descriptive, rather than creatively allusive?

How to figure out whether the data is sample data or population data apart from the client's information?

Is thermodynamics only applicable to systems in equilibrium?

Feels like I am getting dragged in office politics

Binary Numbers Magic Trick

Does jamais mean always or never in this context?

Weird result in complex limit

What's the polite way to say "I need to urinate"?

What word means to make something obsolete?

In gnome-terminal only 2 out of 3 zoom keys work

Is it possible to measure lightning discharges as Nikola Tesla?

Is GOCE a satellite or aircraft?

Python "triplet" dictionary?

Unexpected email from Yorkshire Bank

Given what happens in Endgame, why doesn't Dormammu come back to attack the universe?

When did stoichiometry begin to be taught in U.S. high schools?

Packing rectangles: Does rotation ever help?

How to back up a running remote server?

What is the difference between `a[bc]d` (brackets) and `ab,cd` (braces)?



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


apt-get install with '-' (minus / hyphen) removes packages“sudo apt-get install foo-” causes removing foo package and everything depending on itWhy does `apt-get install python-` remove everything?Default path changed after uninstalling python and reinstalling ubuntu-desktopPackages are removed when I use “apt-get install” with a hyphen after the package nameMust execute “sudo su” and then do apt-get update/upgrade/install, prefacing with sudo doesn't workRedirected OutputThe colors when doing “ls” at my ubuntu server diappeared just like thatapt-get remove indicator-bluetooth removes lot of packagesWhy does “sudo apt-get install gpsd” return with errors?How to restore after accidentally apt-get remove python'sudo apt autoremove python3' removed a lot of packages






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








7
















This question already has an answer here:



  • apt-get install with '-' (minus / hyphen) removes packages

    2 answers



  • “sudo apt-get install foo-” causes removing foo package and everything depending on it [duplicate]

    2 answers



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















marked as duplicate by pomsky, karel, Zanna command-line
Users with the  command-line badge can single-handedly close command-line questions as duplicates and reopen them as needed.

StackExchange.ready(function()
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function()
$hover.showInfoMessage('',
messageElement: $msg.clone().show(),
transient: false,
position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
dismissable: false,
relativeToBody: true
);
,
function()
StackExchange.helpers.removeMessages();

);
);
);
Apr 8 at 6:11


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.













  • 8





    Documented features are not bugs.

    – guiverc
    Apr 7 at 22:24






  • 2





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

    – Scot
    Apr 8 at 4:48











  • @Scot I agree with you. Since there is already a dedicated command to remove packages I don't see the need for this feature. Seems like somebody wanted to include a "pro feature" that hurts new users and provides basically 0 value... The only case in which it would be useful is when you want to remove a package but your hand types install anyway and you realize at the end... but does this happen often enough to justify this feature? I don't think so.

    – Giacomo Alzetta
    Apr 8 at 6:11

















7
















This question already has an answer here:



  • apt-get install with '-' (minus / hyphen) removes packages

    2 answers



  • “sudo apt-get install foo-” causes removing foo package and everything depending on it [duplicate]

    2 answers



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















marked as duplicate by pomsky, karel, Zanna command-line
Users with the  command-line badge can single-handedly close command-line questions as duplicates and reopen them as needed.

StackExchange.ready(function()
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function()
$hover.showInfoMessage('',
messageElement: $msg.clone().show(),
transient: false,
position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
dismissable: false,
relativeToBody: true
);
,
function()
StackExchange.helpers.removeMessages();

);
);
);
Apr 8 at 6:11


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.













  • 8





    Documented features are not bugs.

    – guiverc
    Apr 7 at 22:24






  • 2





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

    – Scot
    Apr 8 at 4:48











  • @Scot I agree with you. Since there is already a dedicated command to remove packages I don't see the need for this feature. Seems like somebody wanted to include a "pro feature" that hurts new users and provides basically 0 value... The only case in which it would be useful is when you want to remove a package but your hand types install anyway and you realize at the end... but does this happen often enough to justify this feature? I don't think so.

    – Giacomo Alzetta
    Apr 8 at 6:11













7












7








7









This question already has an answer here:



  • apt-get install with '-' (minus / hyphen) removes packages

    2 answers



  • “sudo apt-get install foo-” causes removing foo package and everything depending on it [duplicate]

    2 answers



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

















This question already has an answer here:



  • apt-get install with '-' (minus / hyphen) removes packages

    2 answers



  • “sudo apt-get install foo-” causes removing foo package and everything depending on it [duplicate]

    2 answers



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.





This question already has an answer here:



  • apt-get install with '-' (minus / hyphen) removes packages

    2 answers



  • “sudo apt-get install foo-” causes removing foo package and everything depending on it [duplicate]

    2 answers







command-line apt






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 8 at 5:36









Community

1




1










asked Apr 7 at 19:27









Mettigel4_1Mettigel4_1

451




451




marked as duplicate by pomsky, karel, Zanna command-line
Users with the  command-line badge can single-handedly close command-line questions as duplicates and reopen them as needed.

StackExchange.ready(function()
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function()
$hover.showInfoMessage('',
messageElement: $msg.clone().show(),
transient: false,
position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
dismissable: false,
relativeToBody: true
);
,
function()
StackExchange.helpers.removeMessages();

);
);
);
Apr 8 at 6:11


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.









marked as duplicate by pomsky, karel, Zanna command-line
Users with the  command-line badge can single-handedly close command-line questions as duplicates and reopen them as needed.

StackExchange.ready(function()
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function()
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function()
$hover.showInfoMessage('',
messageElement: $msg.clone().show(),
transient: false,
position: my: 'bottom left', at: 'top center', offsetTop: -7 ,
dismissable: false,
relativeToBody: true
);
,
function()
StackExchange.helpers.removeMessages();

);
);
);
Apr 8 at 6:11


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.









  • 8





    Documented features are not bugs.

    – guiverc
    Apr 7 at 22:24






  • 2





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

    – Scot
    Apr 8 at 4:48











  • @Scot I agree with you. Since there is already a dedicated command to remove packages I don't see the need for this feature. Seems like somebody wanted to include a "pro feature" that hurts new users and provides basically 0 value... The only case in which it would be useful is when you want to remove a package but your hand types install anyway and you realize at the end... but does this happen often enough to justify this feature? I don't think so.

    – Giacomo Alzetta
    Apr 8 at 6:11












  • 8





    Documented features are not bugs.

    – guiverc
    Apr 7 at 22:24






  • 2





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

    – Scot
    Apr 8 at 4:48











  • @Scot I agree with you. Since there is already a dedicated command to remove packages I don't see the need for this feature. Seems like somebody wanted to include a "pro feature" that hurts new users and provides basically 0 value... The only case in which it would be useful is when you want to remove a package but your hand types install anyway and you realize at the end... but does this happen often enough to justify this feature? I don't think so.

    – Giacomo Alzetta
    Apr 8 at 6:11







8




8





Documented features are not bugs.

– guiverc
Apr 7 at 22:24





Documented features are not bugs.

– guiverc
Apr 7 at 22:24




2




2





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

– Scot
Apr 8 at 4:48





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

– Scot
Apr 8 at 4:48













@Scot I agree with you. Since there is already a dedicated command to remove packages I don't see the need for this feature. Seems like somebody wanted to include a "pro feature" that hurts new users and provides basically 0 value... The only case in which it would be useful is when you want to remove a package but your hand types install anyway and you realize at the end... but does this happen often enough to justify this feature? I don't think so.

– Giacomo Alzetta
Apr 8 at 6:11





@Scot I agree with you. Since there is already a dedicated command to remove packages I don't see the need for this feature. Seems like somebody wanted to include a "pro feature" that hurts new users and provides basically 0 value... The only case in which it would be useful is when you want to remove a package but your hand types install anyway and you realize at the end... but does this happen often enough to justify this feature? I don't think so.

– Giacomo Alzetta
Apr 8 at 6:11










2 Answers
2






active

oldest

votes


















22














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:



Firstly, you can install the ubuntu-desktop metapackage to get the default desktop environment back:



sudo apt-get install ubuntu-desktop


Now, 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
    Apr 7 at 22:21












  • @HenningMakholm Makes sense; edited.

    – heemayl
    Apr 8 at 6:27


















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































    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    22














    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:



    Firstly, you can install the ubuntu-desktop metapackage to get the default desktop environment back:



    sudo apt-get install ubuntu-desktop


    Now, 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
      Apr 7 at 22:21












    • @HenningMakholm Makes sense; edited.

      – heemayl
      Apr 8 at 6:27















    22














    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:



    Firstly, you can install the ubuntu-desktop metapackage to get the default desktop environment back:



    sudo apt-get install ubuntu-desktop


    Now, 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
      Apr 7 at 22:21












    • @HenningMakholm Makes sense; edited.

      – heemayl
      Apr 8 at 6:27













    22












    22








    22







    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:



    Firstly, you can install the ubuntu-desktop metapackage to get the default desktop environment back:



    sudo apt-get install ubuntu-desktop


    Now, 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:



    Firstly, you can install the ubuntu-desktop metapackage to get the default desktop environment back:



    sudo apt-get install ubuntu-desktop


    Now, 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 Apr 8 at 6:27

























    answered Apr 7 at 19:36









    heemaylheemayl

    68.5k11146217




    68.5k11146217







    • 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
      Apr 7 at 22:21












    • @HenningMakholm Makes sense; edited.

      – heemayl
      Apr 8 at 6:27












    • 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
      Apr 7 at 22:21












    • @HenningMakholm Makes sense; edited.

      – heemayl
      Apr 8 at 6:27







    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
    Apr 7 at 22:21






    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
    Apr 7 at 22:21














    @HenningMakholm Makes sense; edited.

    – heemayl
    Apr 8 at 6:27





    @HenningMakholm Makes sense; edited.

    – heemayl
    Apr 8 at 6:27













    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 Apr 7 at 19:38









        N0rbert

        26.2k957123




        26.2k957123










        answered Apr 7 at 19:36









        vidarlovidarlo

        10.9k52852




        10.9k52852













            Popular posts from this blog

            Adding axes to figuresAdding axes labels to LaTeX figuresLaTeX equivalent of ConTeXt buffersRotate a node but not its content: the case of the ellipse decorationHow to define the default vertical distance between nodes?TikZ scaling graphic and adjust node position and keep font sizeNumerical conditional within tikz keys?adding axes to shapesAlign axes across subfiguresAdding figures with a certain orderLine up nested tikz enviroments or how to get rid of themAdding axes labels to LaTeX figures

            Luettelo Yhdysvaltain laivaston lentotukialuksista Lähteet | Navigointivalikko

            Gary (muusikko) Sisällysluettelo Historia | Rockin' High | Lähteet | Aiheesta muualla | NavigointivalikkoInfobox OKTuomas "Gary" Keskinen Ancaran kitaristiksiProjekti Rockin' High