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

ajour: init at 0.6.3 #108738

Merged
merged 1 commit into from Jan 25, 2021
Merged

ajour: init at 0.6.3 #108738

merged 1 commit into from Jan 25, 2021

Conversation

mweinelt
Copy link
Member

@mweinelt mweinelt commented Jan 8, 2021

Motivation for this change

A cross-plattform addon manager for World of Warcraft.

https://github.com/casperstorm/ajour

cc @MetaDark @cawilliamson

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@mweinelt
Copy link
Member Author

mweinelt commented Jan 8, 2021

It starts up, looks pretty, but I can't select a game directory just yet. After setting it manually in the config it works.

20210108_01h53m48s_grim

@abathur

This comment has been minimized.

@mweinelt mweinelt marked this pull request as draft January 8, 2021 01:57
@mweinelt
Copy link
Member Author

mweinelt commented Jan 8, 2021

Thanks, marked as draft, and your post as off-topic, as you said yourself.

Copy link
Contributor

@kira-bruneau kira-bruneau left a comment

Choose a reason for hiding this comment

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

Thanks @mweinelt! I don't actually play WoW (even though I still have it installed 😛), but I can still help review this.

Would the game directory selection normally open a GTK / Qt file dialog? You might need to specify some of the environment variables that are normally set in wrapGAppsHook or wrapQtAppsHook.

pkgs/tools/games/ajour/default.nix Outdated Show resolved Hide resolved
pkgs/tools/games/ajour/default.nix Outdated Show resolved Hide resolved
pkgs/tools/games/ajour/default.nix Outdated Show resolved Hide resolved
@kira-bruneau
Copy link
Contributor

@mweinelt It looks like native-dialog requires either zenity or kdialog to be in PATH: https://github.com/balthild/native-dialog-rs/blob/master/src/dialog_impl/gnu/mod.rs.

@mweinelt
Copy link
Member Author

Would the game directory selection normally open a GTK / Qt file dialog? You might need to specify some of the environment variables that are normally set in wrapGAppsHook or wrapQtAppsHook.

Yeah, that was it. I went ahead and put zenity and kdialog in the PATH and it is working now.

@mweinelt mweinelt marked this pull request as ready for review January 11, 2021 00:23
@kira-bruneau
Copy link
Contributor

Result of nixpkgs-review pr 108738 run on x86_64-linux 1

1 package built:
  • ajour

@piegamesde
Copy link
Member

When I run the package on Arch Linux, it simply does nothing and exits with code 101 right away :(

The strace line write(3, "02:25:59.712 [panic][ERROR] thre"..., 453) = 453 suggests that the code aborts during a panic.

@kira-bruneau
Copy link
Contributor

kira-bruneau commented Jan 11, 2021

@piegamesde Do you know if this panic is caused by a missing runtime library? You can check with LD_DEBUG=libs ajour.

@piegamesde
Copy link
Member

So, apparently exit code 101 is the panic exit code. So if this is not an abort, why am I not seeing a backtrace?

I don't know how LD_DEBUG=libs output looks like on a failure, but I can't see any obviously failing things there.

@kira-bruneau
Copy link
Contributor

kira-bruneau commented Jan 11, 2021

@piegamesde It looks like ajour uses log-panics to capture panic messages to a log file. Looking through the source, it seems like it should be writing them to ~/.config/ajour/ajour.log. Hopefully that could help narrow down the cause.

@piegamesde
Copy link
Member

@MetaDark Thanks. That explains why the strace command showed the application writing to FD 3 instead of 2 … yeah, there's definitely something of interest in there:

02:38:15.342 [ajour][INFO] Ajour 0.6.1 has started.
02:38:15.342 [ajour::gui][DEBUG] config loaded:
Config {
    wow: Wow {
        directory: None,
        flavor: Retail,
    },
    addons: Addons {
        global_release_channel: Stable,
        ignored: {},
        release_channels: {},
        delete_saved_variables: false,
    },
    theme: None,
    column_config: V1 {
        local_version_width: 150,
        remote_version_width: 150,
        status_width: 85,
    },
    window_size: None,
    scale: None,
    backup_directory: None,
    backup_addons: false,
    backup_wtf: false,
    hide_ignored_addons: false,
    self_update_channel: Stable,
    weak_auras_account: {},
    alternating_row_colors: false,
}
02:38:15.342 [ajour::gui][DEBUG] antialiasing: true
02:38:15.358 [panic][ERROR] thread 'main' panicked at 'running Ajour gui: GraphicsAdapterNotFound': src/gui/mod.rs:1053
   0: log_panics::init::{{closure}}
   1: std::panicking::rust_panic_with_hook
   2: rust_begin_unwind
   3: core::panicking::panic_fmt
   4: core::result::unwrap_failed
   5: ajour::gui::run
   6: ajour::main
   7: std::rt::lang_start::{{closure}}
   8: std::rt::lang_start_internal
   9: main
  10: __libc_start_main
  11: _start

@mweinelt
Copy link
Member Author

02:38:15.358 [panic][ERROR] thread 'main' panicked at 'running Ajour gui: GraphicsAdapterNotFound': src/gui/mod.rs:1053

Funny, that's basically how I started out, before I started patching the RPATH. Can you test the latest change? It adds all the libraries that I set the RPATH for to buildInputs.

@piegamesde
Copy link
Member

Nope, no change :/ maybe I should open a bug upstream asking for better log diagnostics …

@mweinelt
Copy link
Member Author

@piegamesde Can you strace the process and check if it is unable to open any libraries?

@SuperSandro2000
Copy link
Member

Result of nixpkgs-review pr 108738 run on x86_64-darwin 1

1 package marked as broken and skipped:
  • ajour

@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.

Result of nixpkgs-review pr 108738 run on x86_64-linux 1

1 package built:
  • ajour

@mweinelt mweinelt changed the title ajour: init at 0.6.1 ajour: init at 0.6.3 Jan 19, 2021
@kira-bruneau
Copy link
Contributor

Result of nixpkgs-review pr 108738 run on x86_64-linux 1

1 package built:
  • ajour

@mweinelt
Copy link
Member Author

Something is really weird.

anonymous function at /var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/mr-est/ofborg-evaluator-3/pkgs/tools/games/ajour/default.nix:1:1 called without required argument 'kdialog', at /var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/mr-est/ofborg-evaluator-3/lib/customisation.nix:69:16

❯ nix-build -A kdialog
/nix/store/v1gs4i0akskajmin3kvid5pvxa15zkda-kdialog-20.08.3

I renamed this from kdeApplications.kdialog as of a few days ago, as I couldn't find that anymore, and still can't.

❯ nix-build -A kdeApplication.kdialog
error: --- AttrPathNotFound ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- nix-build
attribute 'kdeApplication' in selection path 'kdeApplication.kdialog' not found

I've just rebased this onto master and it still builds for me with just kdialog. I am clueless.

@piegamesde
Copy link
Member

The kdeApplications problem was introduced by #102168

@mweinelt
Copy link
Member Author

mweinelt commented Jan 24, 2021

Migrated to plasma5Packages.kdialog. Thanks for looking this up.

pkgs/tools/games/ajour/default.nix Outdated Show resolved Hide resolved
pkgs/tools/games/ajour/default.nix Outdated Show resolved Hide resolved
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

5 participants