Code Monkey home page Code Monkey logo

ubuntu-mainline-kernel.sh's Introduction

ubuntu-mainline-kernel.sh

Bash script for Ubuntu (and derivatives as LinuxMint) to easily (un)install kernels from the Ubuntu Kernel PPA.

Warnings

⚠️ Use this script at your own risk. Be aware that the kernels installed by this script are unsupported

🔓 Do not use this script if you don't have to or don't know what you are doing. You won't be covered by any security guarantees. The intended purpose by Ubuntu for the mainline ppa kernels is for debugging issues.

ℹ️ We strongly advise to keep the default Ubuntu kernel installed as there is no safeguard that at least one kernel is installed on your system.

Install

apt install wget
wget https://raw.githubusercontent.com/pimlie/ubuntu-mainline-kernel.sh/master/ubuntu-mainline-kernel.sh
chmod +x ubuntu-mainline-kernel.sh
sudo mv ubuntu-mainline-kernel.sh /usr/local/bin/

If you want to automatically check for a new kernel version when you login:

wget https://raw.githubusercontent.com/pimlie/ubuntu-mainline-kernel.sh/master/UbuntuMainlineKernel.desktop
mv UbuntuMainlineKernel.desktop ~/.config/autostart/

SecureBoot

⚠️ There is no support for creating and enrolling your own MOK. If you don't know how to do that then you could use the mok-setup.sh script from berglh/ubuntu-sb-kernel-signing to help you get started (at your own risk)

The script supports self signing the mainline kernels. Edit the script and set sign_kernel=1 and update the paths to your MOK key & certificate. (The default paths are the ones as created by the mok-setup.sh script from berglh/ubuntu-sb-kernel-signing)

Usage

Usage: ubuntu-mainline-kernel.sh -c|-l|-r|-u

Download & install the latest kernel available from kernel.ubuntu.com

Arguments:
  -c               Check if a newer kernel version is available
  -b [VERSION]     Build kernel VERSION locally and then install it (requires git & docker)
  -i [VERSION]     Install kernel VERSION, see -l for list. You don't have to prefix
                   with v. E.g. -i 4.9 is the same as -i v4.9. If version is
                   omitted the latest available version will be installed
  -l [SEARCH]      List locally installedkernel versions. If an argument to this
                   option is supplied it will search for that
  -r [SEARCH]      List available kernel versions. If an argument to this option
                   is supplied it will search for that
  -u [VERSION]     Uninstall the specified kernel version. If version is omitted,
                   a list of max 10 installed kernel versions is displayed
  --update         Update this script by redownloading it from github
  -h               Show this message

Optional:
  -p, --path DIR       The working directory, .deb files will be downloaded into
                       this folder. If omitted, the folder /tmp/ubuntu-mainline-kernel.sh/
                       is used. Path is relative from $PWD
  -ll, --low-latency   Use the low-latency version of the kernel, only for amd64 & i386
  -lpae, --lpae        Use the Large Physical Address Extension kernel, only for armhf
  --snapdragon         Use the Snapdragon kernel, only for arm64
  -do, --download-only Only download the deb files, do not install them
  -ns, --no-signature  Do not check the gpg signature of the checksums file
  -nc, --no-checksum   Do not check the sha checksums of the .deb files
  -d, --debug          Show debug information, all internal commands echo their output
  --rc                 Also include release candidates
  --yes                Assume yes on all questions (use with caution!)

ℹ️ Since ~v5.18 Ubuntu does not publish low-latency mainline kernels anymore, see this AskUbuntu for more info

Elevated privileges

This script needs elevated privileges when installing or uninstalling kernels.

Either run this script with sudo or configure the path to sudo within the script to sudo automatically

Building kernels locally (EXPERIMENTAL)

⚠️ YMMV, this is experimental support. Don't build kernel's if you don't know what you are doing

⚠️ If the build fails, please debug yourself and create a PR with fixes if needed. Also if you don't know how to debug the build failure, then you probably shouldn't be building your own kernels!

ℹ️ There are no plans to add full fledged support for building kernels. This functionality might stay experimental for a long time

The mainline kernel ppa only supports the latest Ubuntu release. But newer Ubuntu releases could use newer library versions then the current LTS releases (f.e. both libssl or glibc version issues have existed in the past). Which means that you won't be able to (fully) install the newer kernel anymore.

When that happens you could try to build your own kernel releases by using the --build VERSION argument (f.e. -b 6.7.0).

Kernel building support is provided by TuxInvader/focal-mainline-builder so requires:

  • git & docker
  • quite a bit of free disk space (~3GB to checkout the kernel source, maybe ~10GB or more during build)
  • can take quite a while depending on how fast your computer is

Example output

Install latest version:

 ~ $ sudo ubuntu-mainline-kernel.sh -i
Finding latest version available on kernel.ubuntu.com
Latest version is v4.9.0 but seems its already installed, continue? (y/N)
Will download 5 files from kernel.ubuntu.com:
CHECKSUMS
CHECKSUMS.gpg
linux-headers-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
linux-headers-4.9.0-040900_4.9.0-040900.201612111631_all.deb
linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
Signature of checksum file has been successfully verified
Checksums of deb files have been successfully verified with sha256sum
Installing 3 packages
[sudo] password for pimlie:
Cleaning up work folder

Uninstall a version from a list

 ~ $ sudo ubuntu-mainline-kernel.sh -u
Which kernel version do you wish to uninstall?
[0]: v4.8.6-040806
[1]: v4.8.8-040808
[2]: v4.9.0-040900
type the number between []: 0
Are you sure you wish to remove kernel version v4.8.6-040806? (y/N)
The following packages will be removed:
linux-headers-4.8.6-040806-generic:amd64 linux-headers-4.8.6-040806-generic:all linux-image-4.8.6-040806-generic:amd64
Are you really sure? (y/N)
[sudo] password for pimlie:
Kernel v4.8.6 successfully purged

Dependencies

  • bash
  • gnucoreutils
  • dpkg
  • wget (since 2018-12-14 as kernel ppa is now https only)

Optional dependencies

  • libnotify-bin (to show notify bubble when new version is found)
  • bsdmainutils (format output of -l, -r with column)
  • gpg (to check the signature of the checksum file)
  • sha1sum/sha256sum (to check the .deb checksums)
  • sbsigntool (to sign kernel images for SecureBoot)
  • sudo

Known issues (with workarounds)

  • GPG is unable to import the key behind a proxy: #74

ubuntu-mainline-kernel.sh's People

Contributors

enormoz avatar gelma avatar gothicvi avatar pimlie avatar robinpaulson avatar roy-orbison avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ubuntu-mainline-kernel.sh's Issues

Patch to KDE Neon

Hi,
First of all, sorry for my bad english. I Tried to do my best in this text
I'm using KDE Neon, that is based in Ubuntu LTS. I Tried to run this script today and I Get this error:

"Abort, this script is only intended for Ubuntu and LinuxMint"

In theory it was supposed to work, cause the KDE Neon is based on Ubuntu 16.04. So a quick look at the code, I saw this:

OS=$(lsb_release -si 2>&-)
[[ "$OS" == "Ubuntu" ]] || [[ "$OS" == "LinuxMint" ]] || {

echo "Abort, this script is only intended for Ubuntu and LinuxMint"
exit 2
}

so I figured that adding "neon" after Linux mint with the same syntax this work. And yeah I was right, that worked without any alteration on my system, all dependencies were already installed.

So the question is, Why limit this script only to Ubuntu and Linux Mint if there are many other distros based on them?

The attach below is the patched script to work on Neon. If you need some help to test your script in other distros based on Ubuntu, please tell me. I love testing other systems 👍

ubuntu-mainline-kernel.txt

Hope it helps. Thanks a lot!

False Positive when remote kernel list could not be retrieved

My wireless dropped just before I went to check for kernel updates and the following happened:

Finding latest version available on kernel.ubuntu.com:
Finding latest installed version: v5.8.14
A newer kernel version () was found but the build was not successful

To verify:
I enabled wireless, checked for updates, and it worked as expected.
I disabled wireless, checked for updates again, and again it did that (see above).

Thanks!

How to install RC kernels?

~/ubuntu-mainline-kernel.sh$ ./ubuntu-mainline-kernel.sh -c --rc
Finding latest version available on kernel.ubuntu.com: v5.7.0-rc3
Finding latest installed version: v5.5.0
A newer kernel version (v5.7.0-rc3) is available, latest in current branch is v5.5.19
~/ubuntu-mainline-kernel.sh$ ./ubuntu-mainline-kernel.sh -i 5.7.0-rc3
Downloading index from kernel.ubuntu.com
Version '5.7.0-rc3' not found
~/ubuntu-mainline-kernel.sh$ ./ubuntu-mainline-kernel.sh -i 5.7.0
Downloading index from kernel.ubuntu.com
Version '5.7.0' not found
~/ubuntu-mainline-kernel.sh$ ./ubuntu-mainline-kernel.sh -i v5.7.0-rc3
Downloading index from kernel.ubuntu.com
Version 'v5.7.0-rc3' not found

Typo

Ah, that dreaded unnecessary apostrophe:

-d, --debug Show debug information, all internal command's echo their output

Script doesn't distinguish between standard and low-latency kernels that are installed

Imagine that you have kernel and then later you decide to install the low-latency variant of that same kernel. While this script has the ability to remove kernels installed by the script, it won't help in this case. For example, from a test machine:

$ ubuntu-mainline-kernel.sh -l
v5.8.3-050803
v5.8.3-050803

Ideally, the low-latency variant should be included in the name.

Installation doesn't ask to specify kernel flavor

Finding latest version available on kernel.ubuntu.com
Latest version is: v4.20.3, continue? (y/N) 
y
Will download 9 files from kernel.ubuntu.com:
Downloading CHECKSUMS: 100%   
Downloading CHECKSUMS.gpg: 100%   
Downloading linux-headers-4.20.3-042003-generic_4.20.3-042003.201901161755_arm64.deb: 100%   
Downloading linux-headers-4.20.3-042003-snapdragon_4.20.3-042003.201901161755_arm64.deb: 100%   
Downloading linux-headers-4.20.3-042003_4.20.3-042003.201901161755_all.deb: ^C

Note that the generic and snapdragon flavors are separate for arm64 and should not be installed together. (This is like installing generic with lowlatency.)

Lowlatency doesn't pull linux-headers package

When attempting to run with -ll switch, only linux-headers-[VERSION]-lowlatency is installed (with errors, as it depends on linux-headers-[VERSION]). Generic kernel of same version installs fine, as it installs both linux-headers-[VERSION] and linux-headers-[VERSION]-generic. Only way to install RT mainline with this script is to first install generic mainline.

Does not detect latest installed RC on 20.04

Hello,

this is the output I get running the latest RC already:

./ubuntu-mainline-kernel.sh -c --rc -d
Finding latest version available on kernel.ubuntu.com: v5.7.0-rc5
Finding latest installed version: v5.7.0
A newer kernel version (v5.7.0-rc5) is available

Thanks and best regards,

f-s-e

small feature request: provide feedback while .deb files are being installed

Currently the script lets me know it's downloading the .deb files, by updating a number indicating percentage completion.

When it comes to installation, everything is silent, I've wondered a couple of times if anything is happening (my machine is relatively old, so it takes a while to install). I'm not after anything flash, a similar increasing % indicator would be great. Of course, this is not at all high priority, more a nice-to-have

Cheers

Does not work with ZFS Root

I've got ZFS root with ubuntu 20.04. The script indicates it has worked, and i can see the entries in /boot like they used to be, but the grub-update step never finds them.

it stop pulling linux-image from ppa

From 4.16.4 onwards it stops pulling the linux-image deb package. Because the package file add an "unsigned" word with the name.

It used to pull 5 files, but after 4.16.4 it's pulling 4 files and missing the linux-image-unsinged file.

Can you please look into it and fix it.

dpkg-query: no packages found matching linux-image-* : none

Failure observed (previously installed a RC using your tool):

~/ubuntu-mainline-kernel.sh$ git pull
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 6 (delta 4), reused 6 (delta 4), pack-reused 0
Unpacking objects: 100% (6/6), 915 bytes | 101.00 KiB/s, done.
From https://github.com/pimlie/ubuntu-mainline-kernel.sh
   1426dc4..68b978c  master     -> origin/master
Updating 1426dc4..68b978c
Fast-forward
 README.md                 | 16 ++++++++--------
 ubuntu-mainline-kernel.sh |  2 +-
 2 files changed, 9 insertions(+), 9 deletions(-)
~/ubuntu-mainline-kernel.sh$ ./ubuntu-mainline-kernel.sh  -c
Finding latest version available on kernel.ubuntu.com: v5.7.2
Finding latest installed versiondpkg-query: no packages found matching linux-image-*
: none
A newer kernel version (v5.7.2) was found but the build was not successful
~/ubuntu-mainline-kernel.sh$ ./ubuntu-mainline-kernel.sh -c --rc
Finding latest version available on kernel.ubuntu.com: v5.7.2
Finding latest installed versiondpkg-query: no packages found matching linux-image-*
: none
A newer kernel version (v5.7.2) was found but the build was not successful
~/ubuntu-mainline-kernel.sh$ cat /etc/*release* | grep DISTRIB
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04 LTS"

Current kernel running: Linux 5.7.0-050700rc7-generic

Abort, the amd64 build has not succeeded

I'm on kernel Linux 5.7.0-050700-generic, and I would like to update it, but when I issue the command

sudo ubuntu-mainline-kernel.sh -i

This is the response:
Finding latest version available on kernel.ubuntu.com
Latest version is: v5.7.9, continue? (y/N)
Abort, the amd64 build has not succeeded

Don't use sudo inside the script

I was running the script freely believing that as long as I didn't use sudo nothing would be changed, since that's the default behaviour of almost every script and application I've used.

The problem of using sudo inside the script is that if a command was run with sudo before the script most terminals will not prompt for a password again. Eg:

sudo find ./ -name something
./ubuntu-mainline-kernel.sh -i 5.3.0

No privilege elevation will be done explicitly and the script will still download and install kernel 5.3.0

No issue - just wanted to say thank you

Hi there,
As someone who needs to download and install the lowlatency versions of the kernel, I have been struggling recently with finding a replacement for other tool(s). Which for one or other reason(s) were broken in various ways.

Thank you for taking the time to write and be providing this script, since it works much more as expected, and with little fuss or issues. The command line flags and usage is exceptionally easy to the the end user. Kernel installed! - Thank you so much. Look forwards to re-running this tool again and again. Many times in the future. Kind regards.

Failing with Ubuntu 14.04 trusty

Finding latest version available on kernel.ubuntu.com
Latest version is: v5.1.6
Will download 6 files from kernel.ubuntu.com:
Downloading CHECKSUMS: 100%
Downloading CHECKSUMS.gpg: 100%
Downloading linux-headers-5.1.6-050106-generic_5.1.6-050106.201905311031_amd64.deb: 100%
Downloading linux-headers-5.1.6-050106_5.1.6-050106.201905311031_all.deb: 100%
Downloading linux-image-unsigned-5.1.6-050106-generic_5.1.6-050106.201905311031_amd64.deb: 100%
Downloading linux-modules-5.1.6-050106-generic_5.1.6-050106.201905311031_amd64.deb: 100%
Importing kernel-ppa gpg key ok
Signature of checksum file has been succesfully verified
Abort, sha256sum retuned an error 0

Is Ubuntu 14.04 trusty supported?

Check if user is root during installation

I think the script should check if the user is root while trying to install a new kernel.

Instead, as of now, it just outputs as if the kernel was installed (which it didn't)

Log here:

Downloading index from kernel.ubuntu.com
Will download 6 files from kernel.ubuntu.com:
Downloading amd64/linux-headers-5.8.5-050805-generic_5.8.5-050805.202008270831_amd64.deb: 100%   
Downloading amd64/linux-headers-5.8.5-050805_5.8.5-050805.202008270831_all.deb: 100%   
Downloading amd64/linux-image-unsigned-5.8.5-050805-generic_5.8.5-050805.202008270831_amd64.deb: 100%   
Downloading amd64/linux-modules-5.8.5-050805-generic_5.8.5-050805.202008270831_amd64.deb: 100%   
Downloading amd64/CHECKSUMS: 100%   
Downloading amd64/CHECKSUMS.gpg: 100%   
Importing kernel-ppa gpg key ok
Signature of checksum file has been successfully verified
Checksums of deb files have been successfully verified with sha256sum
Installing 4 packages
Cleaning up work folder

Abort, the amd64 build has not succeeded

Hi,
On ubuntu Focal, i receive this error after installed libssl1.1, how can i i solve?

08:30:40 root@NanoKDE /app/ubuntu-mainline-kernel.sh master# uname -a ; ubuntu-mainline-kernel.sh -i
Linux NanoKDE 5.7.1-050701-lowlatency #202006071230 SMP PREEMPT Sun Jun 7 12:35:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Finding latest version available on kernel.ubuntu.com
Latest version is: v5.7.2, continue? (y/N)
Abort, the amd64 build has not succeeded
08:30:55 root@NanoKDE /app/ubuntu-mainline-kernel.sh master# aptinstallati |grep 1.1.1f-1ubuntu2

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

libssl-dev/focal,focal,now 1.1.1f-1ubuntu2 amd64 [installato]
libssl1.1/focal,focal,now 1.1.1f-1ubuntu2 amd64 [installato]
libssl1.1/focal,focal,now 1.1.1f-1ubuntu2 i386 [installato, automatico]
openssl/focal,focal,now 1.1.1f-1ubuntu2 amd64 [installato]
08:31:09 root@NanoKDE /app/ubuntu-mainline-kernel.sh master#

Script doesnt install kernel 4.16.4+ correctly

Either something went wrong with the kernel build or the build process has changed for the ubuntu mainline kernels. The issue seems that the linux-image files for amd64 are unsigned and are therefore not picked up by the script. Also a new file linux-modules seems to be listed.

Will need to find more info about this to see whether we need to adjust the script or this was a one-time thing.

Possible refs:

Potential to install wrong kernel?

The help output says:

You don't have to prefix with v. E.g. -i 4.9 is the same as -i v4.9.

However the output of ubuntu-mainline-kernel.sh -r 4.9 ends with:

v4.14.98        v4.14.99        v5.4.9

Omitting the v enables substring matches which can lead to install making the wrong choice.

It seems better to treat 4.9 as v4.9., internally.

After script install an error with -c

sudo ubuntu-mainline-kernel.sh -c
Finding latest version available on kernel.ubuntu.com: v4.20.4
Finding latest installed version: none
/usr/local/bin/ubuntu-mainline-kernel.sh: eilutė 401: sorted: blogas masyvo indeksas
A newer kernel version (v4.20.4) is available, latest in current branch is

Script gives the user zero warnings about the danger of using it

The kernels installed by this script are completely unsupported, and not intended for end-users. Their intended use case is as a convenience in debugging issues with Ubuntu provided kernels.

They get no bug fixes and are not covered by any security guarantees. As such, a user who installs and runs with a kernel setup in this manner is opting out of security updates provided by the official Ubuntu kernels in the default archive.

While I appreciate the rationale some have for installing new kernels (performance, bug fix, hardware support etc) it should be done with informed consent. The user should be told that they're not going to get support for these kernels, and are not covered by security updates.

Perhaps there should be both a warning at the top of the README.md for this repo, and in addition when the user runs the script, at least for the first time, if not every time, that they're going "off piste" when it comes to security updates and support.

Improve RC support

Support for installing / uninstalling RC versions should be improved as there are currently some issues with it.

See #33 and #36

ubuntu-mainline-kernel.sh doen't uninstall kernels

I can't uninstall two kernels instaled with the script.
This was the terminal copy from execution
ubuntu-mainline-kernel.sh -u
Which kernel version do you wish to uninstall?
[0]: v5.6.11-050611
[1]: v5.6.11-050611
type the number between []: 0
Are you sure you wish to remove kernel version v5.6.11-050611? (y/N)
The following packages will be removed:
linux-headers-5.6.11-050611:amd64 linux-headers-5.6.11-050611:all linux-headers-5.6.11-050611-generic:amd64 linux-headers-5.6.11-050611-generic:all linux-headers-5.6.11-050611-lowlatency:amd64 linux-headers-5.6.11-050611-lowlatency:all linux-image-5.6.11-050611-generic:amd64 linux-image-5.6.11-050611-lowlatency:amd64 linux-image-unsigned-5.6.11-050611-generic:amd64 linux-image-unsigned-5.6.11-050611-lowlatency:amd64 linux-modules-5.6.11-050611-generic:amd64 linux-modules-5.6.11-050611-lowlatency:amd64
Are you really sure? Do you still have another kernel installed? (y/N)

It's end and do nothing.

The debug shows
/usr/local/bin/ubuntu-mainline-kernel.sh: linha 783: DEBIAN_FRONTEND=noninteractive: comando não encontrado

relative path failed

download kernel to relative path assigned by -p will fail.

it complains that the downloaded file not found.

Handle kernel build failures

Here is what I am seeing this morning:

Finding latest version available on kernel.ubuntu.com Latest version is: v5.9.5 Abort, the amd64 build has not succeeded

I still get the desktop alert that a newer kernel is available. Maybe this could be handled better?

User feedback seems sparse

When I first discovered this script, only 2 days ago, I mistakenly forgot to run it via sudo. The script acted like it installed the newest kernel but it was only after I rebooted that I realized what I had done. Some sort of check before exiting the script would be very helpful.

Thanks!

Cleaning operation

Goodmorning,
the cleaning operation (sudo kernel-remover -f) doesn't remove the package:
linux-headers-OLD-VERSION*
when there is already installed the new... is a bug?

Thanks

Uninstall of installed kernels is not working

Running ubuntu-mainline-kernel.sh -u <version> with a previously installed version doesn't uninstall the kernel as expected.
kernel-delete

Running the script with --debug leads shows the following error:
/usr/local/bin/ubuntu-mainline-kernel.sh: line 783: DEBIAN_FRONTEND=noninteractive: command not found

I'm running Ubuntu 20.04, with 5.4.20.

Newer kernel notification even if kernel for current arch unavailable due to build failure.

Running on an amd64 system today shows this:

./ubuntu-mainline-kernel.sh -c
Finding latest version available on kernel.ubuntu.com: v4.20.2
Finding latest installed version: v4.20.0-042000
A newer kernel version (v4.20.2) is available

However as per https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20.2/ the amd64 4.20.2 kernel failed to build properly

Build for amd64 failed (see BUILD.LOG.amd64):
  linux-headers-4.20.2-042002_4.20.2-042002.201901130931_all.deb
  *_amd64.deb

Ideally the script should check to make sure there isn't a "Build for arch failed" line before reporting that kernel as available for the arch the script is being run on.

Check to see if another kernel is installed, rather than asking the user

After I do "ubuntu-mainline-kernel.sh -u" and select the kernel to uninstal, the script asks:

"Do you still have another kernel installed? (y/N)"

I'm sure we could check for another kernel installed, either from ubuntu-mainline-kernel.sh or from other (apt) sources. If there isn't a positive from either of those sources, then ask if there is another kernel installed.

Yes, it's minor, it's a small usability thing, not at all high priority.

Please add the progress meter in the script

While downloading big file people should be aware that something is happening in front of their eyes instead of in the background. A progress bar on the terminal would nice ...I mean fetching can be done in the foreground too..more visible stuff

like in dd or pv

--status=progress

modules install is always broken

This issue persists while installig the last kernels. Installing itself is fine:

Finding latest version available on kernel.ubuntu.com
Latest version is: v5.5.13, continue? (y/N) 
Will download 6 files from kernel.ubuntu.com:
Downloading CHECKSUMS: 100%   
Downloading CHECKSUMS.gpg: 100%   
Downloading linux-headers-5.5.13-050513-generic_5.5.13-050513.202003251631_amd64.deb: 100%   
Downloading linux-headers-5.5.13-050513_5.5.13-050513.202003251631_all.deb: 100%   
Downloading linux-image-unsigned-5.5.13-050513-generic_5.5.13-050513.202003251631_amd64.deb: 100%   
Downloading linux-modules-5.5.13-050513-generic_5.5.13-050513.202003251631_amd64.deb: 100%   
Signature of checksum file has been succesfully verified
Checksums of deb files have been succesfully verified with sha256sum
Installing 4 packages
[sudo] Passwort für bfr: 
Cleaning up work folder

But afterwards, linux-modules is in a broken state:

sudo apt-get install -f                                                                                                                                                               
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: The package linux-modules-5.5.13-050513-generic needs to be reinstalled, but I can't find an archive for it.

Minor bug fix: on requesting uninstall permission, print each package on a new line

Currently when i use the "umk -u" option, i'm asked if i want to uninstall a series of packages, listed as below:

linux-headers-5.7.5-050705:amd64 linux-headers-5.7.5-050705:all linux-headers-5.7.5-050705-generic:amd64 linux-headers-5.7.5-050705-generic:all linux-image-5.7.5-050705-generic:amd64 linux-image-unsigned-5.7.5-050705-generic:amd64 linux-modules-5.7.5-050705-generic:amd64

This is not so easy to read, it would be much easier to do so if each package were printed on a new line, like so:
linux-headers-5.7.5-050705:amd64
linux-headers-5.7.5-050705:all
linux-headers-5.7.5-050705-generic:amd64
linux-headers-5.7.5-050705-generic:all
linux-image-5.7.5-050705-generic:amd64
linux-image-unsigned-5.7.5-050705-generic:amd64
linux-modules-5.7.5-050705-generic:amd64

Thanks

Kernel not correctly uninstalled?

with sudo ubuntu-mainline-kernel.sh -i I installed the latest linux kernel (5.5.7). It did not work for me, so I booted using another version (5.5.0). Then removed version 5.5.7 with sudo ubuntu-mainline-kernel.sh -u. However, now when I boot, I still get linux kernel 5.5.7, which should be removed. Any ideas how this is possible?

Is it possible to switch back to the kernel before running ubuntu-mainline-kernel.sh

Hi,

I am running Pop!_OS 19.10 and ran ubuntu-mainline-kernel.sh to see if the latest kernel handles the OLED screen brightness issue. (Unfortunately, it does not :( )

I am curious about how to switch back to the kernel before running the script? Now I can only see one available kernel, which in the latest one, after ubuntu-mainline-kernel.sh -l

Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.