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

ioquake3: fix missing .so files at startup and clean-up #250100

Merged
merged 2 commits into from Aug 19, 2023
Merged

Conversation

drupol
Copy link
Contributor

@drupol drupol commented Aug 19, 2023

The current version of ioquake3 in nixpkgs is broken. Missing .so files when running the main binary:

❯ nix shell nixpkgs#ioquake3
❯ ioquake3.x86_64 
ioq3 1.36 linux-x86_64 Jan  1 1980
SSE instruction set enabled
----- FS_Startup -----
We are looking in the current search path:
/home/pol/.q3a/baseq3
/home/pol/.q3a/baseq3/pak8.pk3 (9 files)
/home/pol/.q3a/baseq3/pak7.pk3 (4 files)
/home/pol/.q3a/baseq3/pak6.pk3 (64 files)
/home/pol/.q3a/baseq3/pak5.pk3 (7 files)
/home/pol/.q3a/baseq3/pak4.pk3 (272 files)
/home/pol/.q3a/baseq3/pak3.pk3 (4 files)
/home/pol/.q3a/baseq3/pak2.pk3 (148 files)
/home/pol/.q3a/baseq3/pak1.pk3 (26 files)
/home/pol/.q3a/baseq3/pak0.pk3 (3539 files)
./baseq3
    
----------------------
4073 files in pk3 files
execing default.cfg
execing q3config.cfg
couldn't exec autoexec.cfg
Hunk_Clear: reset the hunk ok
----- Client Initialization -----
Couldn't read q3history.
----- Initializing Renderer ----
Trying to load "renderer_opengl2_x86_64.so" from "."...
Loading "renderer_opengl2_x86_64.so" failed
failed:
"Failed loading ./renderer_opengl2_x86_64.so: ./renderer_opengl2_x86_64.so: cannot open shared object file: No such file or directory"
Failed to load renderer
~ ✘   

Also, the binaries should not be suffixed with the arch it has been compiled for.

Description of changes

ioquake3:

  • Fix ioquake3
  • Remove the arch suffix from the binaries (ioquake3.x86-64 -> ioquake3, ioq3ded.x86-64 -> ioq3ded)
  • Add .desktop file
  • Remove unneeded dependencies
  • Clean-up installation phase
  • Add meta.mainProgram attribute
  • Add myself in the maintainer list

nixos/quake3-server:

  • add package config option
  • remove top-level with lib;

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

- Fix `ioquake3`
- Remove the arch suffix from the binaries (`ioquake3.x86-64` -> `ioquake3`, `ioq3ded.x86-64` -> `ioq3ded`)
- Add `.desktop` file
- Remove unneeded dependencies
- Clean-up installation phase
- Add `meta.mainProgram` attribute
- Add myself in the maintainer list
- Remove top-level `with lib;`
@drupol drupol changed the title ioquake3: cleanup ioquake3: fix missing .so files at startup and clean-up Aug 19, 2023
@drupol drupol marked this pull request as ready for review August 19, 2023 05:08
@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-in-distress/3604/65

Copy link
Contributor

@doronbehar doronbehar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good here as well. Haven't tested, and I trust you did.

@drupol drupol merged commit cac8909 into master Aug 19, 2023
27 of 28 checks passed
@drupol drupol deleted the ioquake3/update branch August 19, 2023 10:31
@trofi trofi mentioned this pull request Oct 23, 2023
13 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants