Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automate DKMS setup and source code updates #214

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

rawenger
Copy link

@rawenger rawenger commented Sep 8, 2023

I appreciate you setting all of this up @mkubecek, it's a total godsend. I recently had to automate the process of getting the VMware modules up and running through DKMS on a handful of machines, so I wrote this script. I've made some additions to make it as distro-agnostic as possible--let me know what you think. I've included an overview of the script's functionality at the top of dkms-setup.sh.

Edit to add: There should be no change in workflow to anyone not wishing to use DKMS.

========== COMMIT SUMMARY============

DKMS is a convenient framework for managing out-of-tree kernel modules, such as the ones in this repo. The dkms-setup.sh script will add the modules here (vmmon & vmnet, as of this writing) to the system's DKMS configuration, allowing them to be automatically rebuilt and resigned whenever the kernel is upgraded.

CHANGES:
- Add dkms.conf to .gitignore. The setup script will generate a dkms.conf file from the template dkms.conf.in.
- Add an optional override to the VM_UNAME variable in the Makefile. This is required to build for any non-running kernel (which DKMS will do whenever a new kernel is installed by the system package manager).

ADDITIONS:
- dkms-setup.sh: Shell script to manage setup and updates of the modules in this repo.
- dkms.conf.in: Template DKMS configuration file to be populated by the setup script.

DKMS is a convenient framework for managing out-of-tree kernel modules,
such as the ones in this repo. The `dkms-setup.sh` script will add the
modules here (vmmon & vmnet, as of this writing) to the system's DKMS
configuration, allowing them to be automatically rebuilt and resigned
whenever the kernel is upgraded.

CHANGES:
	- Add `dkms.conf` to `.gitignore`. The setup script will
	  generate a `dkms.conf` file from the template `dkms.conf.in`.
	- Add an optional override to the `VM_UNAME` variable in the
	  `Makefile`. This is required to build for any non-running
	  kernel (which DKMS will do whenever a new kernel is installed
	  by the system package manager).

ADDITIONS:
	- `dkms-setup.sh`: Shell script to manage setup and updates of
	  the modules in this repo.
	- `dkms.conf.in`: Template DKMS configuration file to be
	  populated by the setup script.
@vasi
Copy link

vasi commented Mar 5, 2024

This is a great idea, but it doesn't work quite right for me. We checkout a different branch name, and then attempt to process dkms.conf.in, but it's no longer present!

Obviously that'd be fine if we integrated dkms.conf.in to all branches, but it makes it a bit hard to test.

@vasi
Copy link

vasi commented Mar 5, 2024

I think just moving the dkms.conf generation above the branch-switch should fix this.

J-Pai added a commit to J-Pai/vmware-host-modules that referenced this pull request Apr 21, 2024
Similar to mkubecek#214, add
akmod configuration/support to vmware-host-modules.

This will ensure Fedora users are able to get a fresh build of
vmware-host-modules each time the kernel updates.

Spec configuration and installation based on
https://github.com/Fred78290/nct6687d.

Test build:

```
make clean
make akmod/clean && make akmod && sudo akmods
sudo systemctl start vmware.service
```
J-Pai added a commit to J-Pai/vmware-host-modules that referenced this pull request Apr 21, 2024
Similar to mkubecek#214, add
akmod configuration/support to vmware-host-modules.

This will ensure Fedora users are able to get a fresh build of
vmware-host-modules each time the kernel updates.

Spec configuration and installation based on
https://github.com/Fred78290/nct6687d.

Installation for RPM:

```
make akmod
```

Test/Dev flow:

```
make clean
make akmod/clean && make akmod && sudo akmods
sudo systemctl start vmware.service
```
J-Pai added a commit to J-Pai/vmware-host-modules that referenced this pull request Apr 21, 2024
Similar to mkubecek#214, add
akmod configuration/support to vmware-host-modules.

This will ensure Fedora users are able to get a fresh build of
vmware-host-modules each time the kernel updates.

Spec configuration and installation based on
https://github.com/Fred78290/nct6687d.

Installation for RPM:

```
make akmod
```

Test/Dev flow:

```
make clean
make akmod/clean && make akmod && sudo akmods
sudo systemctl start vmware.service
```
J-Pai added a commit to J-Pai/vmware-host-modules that referenced this pull request Apr 21, 2024
Similar to mkubecek#214, add
akmod configuration/support to vmware-host-modules.

This will ensure Fedora users are able to get a fresh build of
vmware-host-modules each time the kernel updates.

Spec configuration and installation based on
https://github.com/Fred78290/nct6687d.

Installation for RPM:

```
make akmod
```

Test/Dev flow:

```
make clean
make akmod/clean && make akmod && sudo akmods
sudo systemctl start vmware.service
```
J-Pai added a commit to J-Pai/vmware-host-modules that referenced this pull request Apr 27, 2024
Similar to mkubecek#214, add
akmod configuration/support to vmware-host-modules.

This will ensure Fedora users are able to get a fresh build of
vmware-host-modules each time the kernel updates.

Spec configuration and installation based on
https://github.com/Fred78290/nct6687d.

Installation for RPM:

```
make akmod
```

Test/Dev flow:

```
make clean
make akmod/clean && make akmod && sudo akmods
sudo systemctl start vmware.service
```
@rawenger
Copy link
Author

Fixed! Good catch @vasi

J-Pai added a commit to J-Pai/vmware-host-modules that referenced this pull request Aug 15, 2024
Similar to mkubecek#214, add
akmod configuration/support to vmware-host-modules.

This will ensure Fedora users are able to get a fresh build of
vmware-host-modules each time the kernel updates.

Spec configuration and installation based on
https://github.com/Fred78290/nct6687d.

Installation for RPM:

```
make akmod
```

Test/Dev flow:

```
make clean
make akmod/clean && make akmod && sudo akmods
sudo systemctl start vmware.service
```

Applied fix for newer kernel:

mkubecek#239
J-Pai added a commit to J-Pai/vmware-host-modules that referenced this pull request Oct 31, 2024
Similar to mkubecek#214, add
akmod configuration/support to vmware-host-modules.

This will ensure Fedora users are able to get a fresh build of
vmware-host-modules each time the kernel updates.

Spec configuration and installation based on
https://github.com/Fred78290/nct6687d.

Installation for RPM:

```
make akmod
```

Test/Dev flow:

```
make clean
make akmod/clean && make akmod && sudo akmods
sudo systemctl start vmware.service
```

Applied fix for newer kernel:

mkubecek#239

Applied another fix for newer kernel:

mkubecek#243 (comment)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants