Closed itspngu closed 2 years ago
Hello!
./install.sh config
does not install needed dependencies as it's not really meant for distros that are otherwise supported. ./install.sh install
in the other hand, installs the needed dependencies.
One could edit install.sh
to offer installing dependencies for supported distros when running ./install.sh config
. As a workaround, one can run ./install.sh install
, abort the script at the end of the dependency installation then run ./install.sh config
, which is meant for more "advanced users" who want to compile linux-tkg
for their unsupported distro.
it's not really meant for distros that are otherwise supported
The readme does state that "f you only want the script to patch the sources in linux-src-git, you can use ./install.sh config", which kind of contradicts that statement. You're totally right about people who want to do that being "advanced users" though, if somebody, for some reason, only wants to apply the patches without building, they'll also likely be able to figure out missing dependencies themselves. Closing the issue.
The readme does state that "f you only want the script to patch the sources in linux-src-git, you can use ./install.sh config", which kind of contradicts that statement.
This is under the "Generic install" paragraph, which does not state that dependencies are installed: the script doesn't even know which distro you are running, which is the point of "Generic install".
You're totally right about people who want to do that being "advanced users" though, if somebody, for some reason, only wants to apply the patches without building, they'll also likely be able to figure out missing dependencies themselves.
Absolutely
The logic in
install.sh
explicitly does not call_install_dependencies
when the user runs the 'config' command: https://github.com/Frogging-Family/linux-tkg/blob/master/install.sh#L198On my system that borks, as shown in the output below. The 'config' command does not complete successfully when using a configuration fragment as I'm missing missing
flex
(not entirely sure when or how I uninstalled it, upgraded from F34 to F35 the other day). Installingflex
lets the script do its job - I'm not sure if this is a corner case that can be ignored or if this warrants adjustments toinstall.sh
, possibly also for other distros.$ ./install.sh config
```shell_session ./install.sh config -> External configuration file /home/pngu/.config/frogminer/linux-tkg.cfg will be used and will override customization.cfg values. kernel.org https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git (fetch) kernel.org https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git (push) googlesource.com https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable (fetch) googlesource.com https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable (push) -> Current branch: * (HEAD detached at v5.14.17) -> Reseting files to their original state HEAD is now at 3dfa869cb Linux 5.14.17 Removing .config Removing .config.old Removing Documentation/admin-guide/kernel-parameters.txt.orig Removing Documentation/admin-guide/pm/amd-pstate.rst Removing Documentation/scheduler/sched-BMQ.txt Removing Documentation/vm/multigen_lru.rst Removing arch/arm64/kernel/cpufeature.c.orig Removing arch/x86/Makefile.orig Removing block/elevator.c.orig Removing drivers/Makefile.orig Removing drivers/cpufreq/Kconfig.orig Removing drivers/cpufreq/amd-pstate.c Removing drivers/cpufreq/cpufreq_ondemand.c.orig Removing drivers/cpufreq/intel_pstate.c.orig Removing drivers/firmware/efi/secureboot.c Removing drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c.orig Removing drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c.orig Removing drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c.orig Removing drivers/gpu/drm/amd/display/dc/core/dc.c.orig Removing drivers/hid/hid-quirks.c.orig Removing drivers/idle/intel_idle.c.orig Removing drivers/infiniband/core/addr.c.orig Removing drivers/pci/pci.c.orig Removing fs/proc/base.c.orig Removing fs/proc/internal.h.orig Removing fs/proc/task_mmu.c.orig Removing include/acpi/cppc_acpi.h.orig Removing include/config/ Removing include/generated/ Removing include/linux/mm.h.orig Removing include/linux/page-flags.h.orig Removing include/linux/pagemap.h.orig Removing include/linux/sched.h.orig Removing include/uapi/linux/futex.h.orig Removing init/Kconfig.orig Removing kernel-5.14.17_tkg_bmq.tar.gz Removing kernel.spec Removing kernel/Kconfig.hz.orig Removing kernel/fork.c.orig Removing kernel/futex.c.orig Removing kernel/locking/rwsem.c.orig Removing kernel/sched/alt_core.c Removing kernel/sched/alt_debug.c Removing kernel/sched/alt_sched.h Removing kernel/sched/bmq.h Removing kernel/sched/core.c.orig Removing kernel/sched/cpufreq_schedutil.c.orig Removing kernel/sched/debug.c.orig Removing kernel/sched/fair.c.orig Removing kernel/sched/pds.h Removing kernel/sched/sched.h.orig Removing kernel/sched/topology.c.orig Removing kernel/sysctl.c.orig Removing kernel/time/hrtimer.c.orig Removing kernel/user_namespace.c.orig Removing mm/huge_memory.c.orig Removing mm/page-writeback.c.orig Removing mm/page_alloc.c.orig Removing mm/vmscan.c.orig Removing net/ipv4/tcp.c.orig Removing net/sched/Kconfig.orig Removing scripts/basic/fixdep Removing scripts/kconfig/conf Removing scripts/mkcompile_h.orig -> Switching to linux-5.14.y linux-5.14-kernel.org -> 5.14.y branch exists locally, updating... Switched to branch 'linux-5.14-kernel.org' Your branch is up to date with 'kernel.org/linux-5.14.y'. remote: Enumerating objects: 1, done. remote: Counting objects: 100% (1/1), done. remote: Total 1 (delta 0), reused 1 (delta 0), pack-reused 0 Unpacking objects: 100% (1/1), 809 bytes | 809.00 KiB/s, done. HEAD is now at 3dfa869cb Linux 5.14.17 -> Checking out latest release: v5.14.17 Note: switching to 'v5.14.17'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c