Conversation
There was a problem hiding this comment.
I didn't knew it existed - nix-env -f "<nixpkgs>" -qaP|grep gtk3 doesn't list gtk3, only gtk3-x11. Is there a command that would have listed gtk3?
There was a problem hiding this comment.
I would use nix-index’s nix-locate. It is available on IRC as well, as ,locale libgtk-3 command, but it suffers from the same problem – Nix does not know which attribute path is canonical. Grepping nixpkgs source code is still the best way, IMHO.
There was a problem hiding this comment.
Programs executed during build should go to nativeBuildInputs.
There was a problem hiding this comment.
Could you create a patch file instead? sed calls get outdated pretty fast without any warning.
There was a problem hiding this comment.
It seems you forgot to add meson to nativeBuildInputs.
There was a problem hiding this comment.
Even though meson and ninja are specified on the project page, it also builds with just ./configure and make. I tried to make it work with meson, but for some reason it turned out to be much harder.
There was a problem hiding this comment.
Meson is the preferred build system. What issues are you encountering specifically?
There was a problem hiding this comment.
...
Build targets in project: 24
Found ninja-1.8.2 at /nix/store/35wvn5g0igx8xpqzm66j3anpi0icy6rg-ninja-1.8.2/bin/ninja
meson: enabled parallel building
building
build flags: -j1 -l1
[1/66] Generating modem-manager-gui.appdata.xml_merge with a custom command.
[2/66] Generating modem-manager-gui.desktop_merge with a custom command.
[3/66] Generating man-de with a custom command.
FAILED: man/de/modem-manager-gui.1.gz
/build/hg-archive/man/manhelper.py ../man/de/de.po man/de/modem-manager-gui.1.gz
/bin/sh: /build/hg-archive/man/manhelper.py: not found
ninja: build stopped: subcommand failed.
builder for '/nix/store/jnn4w26z9z13kqgij31s0mw0y1p8p2m0-modem-manager-gui.drv' failed with exit code 1
There was a problem hiding this comment.
It cannot find the /usr/bin/env in the shebang of the script You will need to do
postPatch = ''
patchShebangs man/manhelper.py
'';
possibly preceded by chmod +xing the file.
There was a problem hiding this comment.
manhelper.py is already executable, so it worked without chmod, but then the script itself failed:
meson: enabled parallel building
building
build flags: -j1 -l1
[1/66] Generating modem-manager-gui.appdata.xml_merge with a custom command.
[2/66] Generating modem-manager-gui.desktop_merge with a custom command.
[3/66] Generating man-de with a custom command.
FAILED: man/de/modem-manager-gui.1.gz
/build/hg-archive/man/manhelper.py ../man/de/de.po man/de/modem-manager-gui.1.gz
Traceback (most recent call last):
File "/build/hg-archive/man/manhelper.py", line 20, in <module>
for line in intfile:
File "/nix/store/nrl0l79a48924xb0897ap572xf29ciir-python3-3.6.6/lib/python3.6/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 363: ordinal not in range(128)
ninja: build stopped: subcommand failed.
builder for '/nix/store/v9v1sbnpr6xazzp8qrr98yb32wnpmyi9-modem-manager-gui.drv' failed with exit code 1
There was a problem hiding this comment.
It is one of issues with our python. You can fix it by adding LC_ALL = "en_US.utf-8" attribute to the derivation and glibcLocales to nativeBuildInputs.
There was a problem hiding this comment.
That worked. Updated the package to build with meson and ninja.
There was a problem hiding this comment.
itstool belongs to nativeBuildInputs
There was a problem hiding this comment.
This patch should no longer be required with meson.
There was a problem hiding this comment.
name is supposed to be modem-manager-gui-${version}. At least until NixOS/rfcs#35 is implemented.
There was a problem hiding this comment.
description is supposed to be short: see https://repology.org/metapackage/modem-manager-gui/information#Summaries for what other distros use. You can add this to longDescription.
|
In case you want ofono, I have packaged it in this branch: https://github.com/jtojnar/nixpkgs/tree/librem-phone |
|
@jtojnar thanks. ModemManager backend works for my hardware, so maybe another time. |
pkgs/top-level/perl-packages.nix
Outdated
There was a problem hiding this comment.
Why a this needed?
Is not there something like python.sitePackages for Perl so the path does not need to be specified manually?
There was a problem hiding this comment.
I don't know what python.sitePackages is. Without this change the package was broken - whenever you try to run it's executables the app can't find it's own packages. I copied this buildPhase from another perl package and it fixed that issue.
There was a problem hiding this comment.
There was a problem hiding this comment.
--install_path=\"lib=$out/${perl.libPrefix}\" seems to be enough. Also no need for adding the final space.
2bd2aaf to
6d34e36
Compare
|
Thank you. |
Motivation for this change
Things done
sandboxinnix.confon non-NixOS)nix-shell -p nox --run "nox-review wip"./result/bin/)nix path-info -Sbefore and after)