pop-os / iso

Pop!_OS ISO production
Other
499 stars 65 forks source link

GRUB and Ubiquity mistake Pop!_OS for Ubuntu (Artful Aardvark) #137

Closed brs17 closed 7 years ago

brs17 commented 7 years ago

If this is a bug, please use the template below. If this is a feature request, question, or a general discussion topic - please post on our subreddit https://reddit.com/r/pop_os - as that is the proper forum for those types of posts.

Reporter info

 * Distribution - (run ```cat /etc/os-release```)
 * Related Application and/or Package Version - apt policy $PACKAGE NAME

NAME="Pop!_OS" VERSION="17.10 (Artful Aardvark)" BUILD = 31 (noNVIDIA)

Issue/Bug Description With Pop!_OS already installed, attempting to install Pop!_OS again says Artful Aardvark is already installed.

screenshot from 2017-10-10 23-07-52

When proceeding with installing Pop!_OS alongside, the already installed Pop!_OS, once again Ubuntu is listed as the already installed machine. That being said the icon for the previously installed OS correctly shows Pop!_OS.

screenshot from 2017-10-10 23-11-34

Upon completion of the installation, the grub menu shows two different versions of Ubuntu, both of them should be displayed as Pop!_OS.

Steps to reproduce (if you know) On a machine running Pop!_OS, boot into a Pop!_OS liveCD and begin the install process. At the "Installation type" page, the installed OS will be incorrectly labeled.

Expected behaviour Recognize that Pop!_OS is already installed.

Other Notes Note: I have not tested installing Pop!_OS alongside other operating systems, but I am planning to do so.

jackpot51 commented 7 years ago

GRUB gets its information from lsb_release -i -s. We can override this by creating a file in /etc/default/grub.d. However, if we override it, we will need to modify grub to prevent GNU/Linux from being added to the name.

Here is the logic, from the grub2 package

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
  OS=GNU/Linux
else
  case ${GRUB_DISTRIBUTOR} in
    Ubuntu|Kubuntu)
      OS="${GRUB_DISTRIBUTOR}"
      ;;
    *)
      OS="${GRUB_DISTRIBUTOR} GNU/Linux"
      ;;
  esac
  CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}"
fi
jackpot51 commented 7 years ago

Packages uploaded that should fix the GRUB side of this.

https://launchpad.net/~system76/+archive/ubuntu/pop/+build/13571515

brs17 commented 7 years ago

This fix also fixed the first installation page, recognizing that Pop!_OS was installed.

The partitioning page now does not show the proper Pop!_OS icon over the currently installed drive.

update

brs17 commented 7 years ago

I can confirm with the package update from @jackpot51 does indeed fix the GRUB part of this bug.

jackpot51 commented 7 years ago

We had to revert this, due to causing problems on EFI systems. The GRUB_DISTRIBUTOR cannot be changed without changing the lsb_release

isantop commented 7 years ago

This issue was moved to pop-os/pop#28