about summary refs log tree commit diff
path: root/doc/languages-frameworks
AgeCommit message (Collapse)AuthorFilesLines
2024-04-04Merge pull request #299618 from TomaSajt/dub-supportAtemu2-0/+70
Add buildDubPackage and dub-to-nix for building dub based packages
2024-04-03doc: add dlang language sectionTomaSajt2-0/+70
2024-03-31Merge master into staging-nextgithub-actions[bot]2-21/+16
2024-03-31Merge pull request #300019 from eflanagan0/doc-lowercase-npmDaniel Sidhion1-10/+10
doc: lowercase npm name
2024-03-31doc: clean-up Coq derivation example (#299927)Vincent Laporte1-11/+6
2024-03-29doc: lowercase npm nameEli Flanagan1-10/+10
npm, Inc documentation asks to use lowercase. Their documentation also has consistent lowercase usage. e.g. <https://docs.npmjs.com/about-npm>
2024-03-28Merge master into staging-nextgithub-actions[bot]27-281/+442
2024-03-28treewide: Switch markdown placeholder from "..." to <...>Janne Heß4-5/+5
We use angle brackets since they look a lot like a placeholder while also being valid nix code, as suggested by roberth here: https://github.com/NixOS/nixpkgs/pull/299554#discussion_r1541797970
2024-03-28treewide: Fix all Nix ASTs in all markdown filesJanne Heß26-255/+416
This allows for correct highlighting and maybe future automatic formatting. The AST was verified to work with nixfmt only.
2024-03-28treewide: Mark Nix blocks in markdown as NixJanne Heß7-26/+26
This should help us with highlighting and future formatting.
2024-03-26Merge master into staging-nextgithub-actions[bot]1-0/+60
2024-03-25doc: add build rust package with meson example (#298881)Aleksana1-0/+60
2024-03-23Merge staging-next into staginggithub-actions[bot]1-13/+32
2024-03-22doc: improve javascript conventions (#298127)Eli Flanagan1-13/+32
I created newlines per the <https://github.com/NixOS/nixpkgs/blob/master/doc/README.md#documentation-conventions> guide. This paves the way for future contributions to not be distracted by expected conventions.
2024-03-21Merge staging-next into staginggithub-actions[bot]1-2/+3
2024-03-21Merge pull request #297347 from tzx/docs-right-location-buildPytonPackageMartin Weinelt1-2/+3
doc: document name binding for buildPythonPackage
2024-03-21doc: document name binding for buildPythonPackageTimmy Xiao1-2/+3
2024-03-20Merge staging-next into staginggithub-actions[bot]1-0/+4
2024-03-20doc: Add troubleshooting for Cythonized code and pytest (#293069)Sarah Clark1-0/+4
Cython is a Python compiler that emits native .so modules. By default, python derivations run tests in the wrong directory to see these modules and tests fail. Issue #255262 documents the root cause and solution for this problem. This PR adds a description of the problem and the most common solution to the test troubleshooting list.
2024-03-20Merge staging-next into staginggithub-actions[bot]1-1/+1
2024-03-19Merge pull request #281576 from yannham/refactor/cuda-setup-hooks-refactorSomeone1-1/+1
cudaPackages: generalize and refactor setup hooks
2024-03-19Merge staging-next into staginggithub-actions[bot]1-3/+26
2024-03-19Merge pull request #296549 from TomaSajt/strip-java-archives-hookPol Dellaiera1-3/+26
add stripJavaArchivesHook and use treewide
2024-03-19Merge staging-next into staginggithub-actions[bot]1-2/+2
2024-03-18doc/mkYarnPackage: document better distPhase and doDistDoron Behar1-2/+2
2024-03-17doc: include stripJavaArchivesHook in the java sectionTomaSajt1-3/+26
2024-03-17Merge staging-next into staginggithub-actions[bot]1-1/+6
2024-03-16doc/lua: mention the patching of interpretersMatthieu Coudron1-0/+3
explain why they are patched in nixpkgs.
2024-03-15cudaPackages: generalize and refactor setup hookYann Hamdaoui1-1/+1
This PR refactor CUDA setup hooks, and in particular autoAddOpenGLRunpath and autoAddCudaCompatRunpathHook, that were using a lot of code in common (in fact, I introduced the latter by copy pasting most of the bash script of the former). This is not satisfying for maintenance, as a recent patch showed, because we need to duplicate changes to both hooks. This commit abstract the common part in a single shell script that applies a generic patch action to every elf file in the output. For autoAddOpenGLRunpath the action is just addOpenGLRunpath (now addDriverRunpath), and is few line function for autoAddCudaCompatRunpathHook. Doing so, we also takes the occasion to use the newer addDriverRunpath instead of the previous addOpenGLRunpath, and rename the CUDA hook to reflect that as well. Co-Authored-By: Connor Baker <connor.baker@tweag.io>
2024-03-09Merge master into haskell-updatesgithub-actions[bot]1-0/+31
2024-03-08Merge pull request #289231 from adisbladis/fetchnpmlockadisbladis1-0/+31
importNpmLock: init
2024-03-07Merge master into haskell-updatesgithub-actions[bot]11-69/+63
2024-03-06doc/lua.section.md: update lua documentationMatthieu Coudron1-18/+8
2024-03-06Remove top level `with lib;` in docs (#293829)Philip Taron1-1/+7
2024-03-06Nix docs: remove `with lib;` from example codeAnderson Torres10-48/+48
Following [Best Practices](https://nix.dev/guides/best-practices#with-scopes), `with` is a problematic language construction and should be avoided. Usually it is employed like a "factorization": `[ X.A X.B X.C X.D ]` is written `with X; [ A B C D ]`. However, as shown in the link above, the syntatical rules of `with` are not so intuitive, and this "distributive rule" is very selective, in the sense that `with X; [ A B C D ]` is not equivalent to `[ X.A X.B X.C X.D ]`. However, this factorization is still useful to "squeeze" some code, especially in lists like `meta.maintainers`. On the other hand, it becomes less justifiable in bigger scopes. This is especially true in cases like `with lib;` in the top of expression and in sets like `meta = with lib; { . . . }`. That being said, this patch removes most of example code in the current documentation. The exceptions are, for now - doc/functions/generators.section.md - doc/languages-frameworks/coq.section.md because, well, they are way more complicated, and I couldn't parse them mentally - yet another reason why `with` should be avoided!
2024-03-05python38: removeMartin Weinelt1-2/+0
The end of life for Python 3.8 is scheduled for 2024/10. As such it cannot be a part of NixOS 24.05, because its support cycle goes past that.
2024-03-05Merge master into haskell-updatesgithub-actions[bot]2-4/+6
2024-03-04doc: small fix for nightly in derivation snippet (#292688)Leon1-2/+2
2024-03-05importNpmLock: initadisbladis1-0/+31
This is an alternative to `fetchNpmDeps` that is notably different in that it uses metadata from `package.json` & `package-lock.json` instead of specifying a fixed-output hash. Notable features: - IFD free. - Only fetches a node dependency once. No massive FODs. - Support for URL, Git and path dependencies. - Uses most of the existing `npmHooks` `importNpmLock` can be used _only_ in the cases where we need to check in a `package-lock.json` in the tree. Currently this means that we have 13 packages that would be candidates to use this function, though I expect most usage to be in private repositories. This is upstreaming the builder portion of https://github.com/adisbladis/buildNodeModules into nixpkgs (different naming but the code is the same). I will archive this repository and consider nixpkgs the new upstream once it's been merged. For more explanations and rationale see https://discourse.nixos.org/t/buildnodemodules-the-dumbest-node-to-nix-packaging-tool-yet/35733 Example usage: ``` nix stdenv.mkDerivation { pname = "my-nodejs-app"; version = "0.1.0"; src = ./.; nativeBuildInputs = [ importNpmLock.hooks.npmConfigHook nodejs nodejs.passthru.python # for node-gyp npmHooks.npmBuildHook npmHooks.npmInstallHook ]; npmDeps = buildNodeModules.fetchNodeModules { npmRoot = ./.; }; } ```
2024-03-04Merge pull request #293163 from Aleksanaa/doc/qtK9001-2/+4
doc/qt: minor fixes
2024-03-04doc/qt: minor fixesaleksana1-2/+4
2024-02-27Merge master into haskell-updatesgithub-actions[bot]1-1/+1
2024-02-26doc: Fix typo resulting in broken link in manualMihai Maruseac1-1/+1
I was looking at https://nixos.org/manual/nixpkgs/stable/#buildpythonpackage-parameters to import a Python package and noticed that the link for the `hooks` in `pyproject` option is broken due to a typo (used <kbd>0</kbd> instead of <kbd>)</kbd>). Signed-off-by: Mihai Maruseac <mihai.maruseac@gmail.com>
2024-02-26haskellPackages: add dontCheckIf helperWolfgang Walther1-0/+5
Using this helper will prevent introducing problematic doCheck = condition overrides, which accidentally re-enable previously disabled tests.
2024-02-25Merge master into haskell-updatesgithub-actions[bot]2-1/+6
2024-02-21Merge master into haskell-updatesgithub-actions[bot]1-37/+45
2024-02-20Merge master into staging-nextgithub-actions[bot]1-37/+45
2024-02-18mk-python-derivation: Add build-system argumentadisbladis1-16/+17
Much like the previous commit that adds dependencies & optional-dependencies this aligns PEP-517 build systems with how they are defined in PEP-518/PEP-621. The naming `build-system` (singular) is aligned with upstream Python standards.
2024-02-18mk-python-derivation: Add dependencies & optional-dependencies argumentsadisbladis1-26/+33
Since https://github.com/NixOS/nixpkgs/pull/161835 we've had the concept of `passthru.optional-dependencies` for Python optional deps. Having to explicitly put optional-dependencies in the passthru attrset is a bit strange API-wise, even though it semantically makes sense. This change unifies the handling of non-optional & optional Python dependencies using the names established from PEP-621 (standardized pyproject.toml project metadata).
2024-02-17buildLuarocksPackage: accept structured luarocks configMatthieu Coudron1-0/+5
There is an arbitrary mapping being done right now between nixpkgs lua infrastructre and luarocks config schema. This is confusing if you use lua so let's make it possible to use the lua names in the nixpkgs, thanks to the lib.generators.toLua convertor. The only nixpkgs thing to remember should be to put the config into `luarocksConfig` `buildLuarocksPackage.extraVariables` should become `buildLuarocksPackage.luarocksConfig.variables`