| 17 Aug 2023 |
| jthulhu changed their display name from jthulhu to Evan. | 22:49:50 |
| 18 Aug 2023 |
| jthulhu changed their display name from Evan to jthulhu. | 01:18:41 |
| Shados joined the room. | 05:42:11 |
lxsameer | hey friends, I'm trying to create a musl based shell using devShell like this:
devShells = {
${x86_64-linux} = nixpkgs.pkgsCross.libcxxStdenv.mkShell {
nativeBuildInputs = native_build_inputs nixpkgs.pkgsCross;
buildInputs = build_inputs nixpkgs.pkgsCross;
shellHook = ''fish && exit'';
};
| 19:06:53 |
lxsameer | but I get an error that says: error: attribute 'pkgsCross' missing | 19:07:18 |
lxsameer | should I do anything special to access pkgsCross? | 19:07:41 |
CRTified | Is nixpkgs your nixpkgs flake input? If yes, check out the legacyPackages attribute | 19:14:37 |
lxsameer | yes it is. ok let me try | 19:15:02 |
lxsameer | should I import nixpkgs even though it passed as an argument ? | 19:17:32 |
CRTified | In reply to @lxsameer:matrix.org should I import nixpkgs even though it passed as an argument ? Either you do that, passing an appropriate system value along, or you use nixpkgs.legacyPackages.x86_64-linux.pkgsCross.foooooo | 19:20:43 |
CRTified | (sorry, on mobile right now, so it's a pain to do proper markdown) | 19:21:10 |
lxsameer | ahhhhh, got it, I was missing x86_64-linux part | 19:21:19 |
lxsameer | thank you | 19:21:22 |
| 19 Aug 2023 |
| mr-qubo joined the room. | 11:24:52 |
mr-qubo | Hi! I'm trying to add commands to devShell, like this:
commands = [
{
name = "run-client";
command = "nixGLIntel client -v --host c71ee55ef19fb0c4b934610d-1024-game-server.challenge.master.camp.allesctf.net -p 31337 --ssl --username 'justCatTheFish!1' --password password123";
}
];
But I get this error:
[...]
162|
163| commands = [
| ^
164| {
error: cannot coerce a set to a string
What's the correct syntax? | 11:26:30 |
| theoretical-types joined the room. | 12:47:39 |
| @khalilsantana:matrix.org left the room. | 19:50:49 |
Artturin | In reply to @mr-qubo:matrix.org
Hi! I'm trying to add commands to devShell, like this:
commands = [
{
name = "run-client";
command = "nixGLIntel client -v --host c71ee55ef19fb0c4b934610d-1024-game-server.challenge.master.camp.allesctf.net -p 31337 --ssl --username 'justCatTheFish!1' --password password123";
}
];
But I get this error:
[...]
162|
163| commands = [
| ^
164| {
error: cannot coerce a set to a string
What's the correct syntax? weird that does seem correct https://github.com/search?q=devShell+commands+language%3ANix&type=code&l=Nix | 20:46:22 |
lxsameer | hey friends, I have the following flake, my aim is to have a shell with musl, clang16 and libcxx16. But when i do nix develop nix builds clang-11 and then tries to build clang-16, but it fails with an error about a missing clang-tblgen. Given that, tablegen has to be built as part of llvm itself. Then am i doing it wrong or is it a bug. | 21:29:37 |
lxsameer | {
description = "Description for the project";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
};
outputs = inputs@{ nixpkgs, ... }:
let
x86_64-linux = "x86_64-linux";
arm64-linux = "arm64-linux";
pkgsCross = nixpkgs.legacyPackages.pkgsCross.musl64;
get_pkgs = system: nixpkgs.legacyPackages.${system};
native_build_inputs = pkgs: with pkgs; [
cmake
ninja
ccache
llvmPackages_16.lldb
llvmPackages_16.lld
llvmPackages_16.libcxx
llvmPackages_16.libcxxabi
llvmPackages_16.compiler-rt
nixpkgs-fmt
bat
git
fish
python3
];
build_inputs = pkgs: with pkgs;
[
boehmgc
llvm_16
llvm_16
gtest
gmock
zlib-ng
zstd
];
linux-shell = pkgs: {
default = pkgs.pkgsCross.musl64.mkShell.override {
stdenv = pkgs.pkgsCross.musl64.llvmPackages_16.libcxxStdenv;
} {
nativeBuildInputs = native_build_inputs pkgs.pkgsCross.musl64;
buildInputs = build_inputs pkgs.pkgsCross.musl64;
shellHook = ''fish && exit'';
};
clang = pkgs.mkShell.override { stdenv = pkgs.clang16Stdenv; } {
nativeBuildInputs = native_build_inputs pkgs;
buildInputs = build_inputs pkgs;
shellHook = ''fish && exit'';
};
gcc = pkgs.mkShell {
nativeBuildInputs = native_build_inputs pkgs;
buildInputs = build_inputs pkgs;
shellHook = ''fish && exit'';
};
};
in
{
devShells = {
${x86_64-linux} = linux-shell (get_pkgs x86_64-linux);
${arm64-linux} = linux-shell (get_pkgs arm64-linux);
};
};
}
| 21:29:45 |
| Oro (any/all) changed their display name from Dallas Strouse (she/her) to Dallas Strouse (she/her) 🧑🏫. | 21:35:36 |
| 20 Aug 2023 |
| ttamttam joined the room. | 04:32:26 |
| @erremilia:matrix.org joined the room. | 17:51:15 |
| abstract-logic-tree joined the room. | 20:42:08 |
| 21 Aug 2023 |
| @alper-celik:matrix.org joined the room. | 06:06:39 |
| daxvena removed their profile picture. | 23:41:33 |
| daxvena set a profile picture. | 23:42:26 |
| 22 Aug 2023 |
| chvp changed their profile picture. | 13:03:26 |
metasyntactic | So, I have my main flake that I use for all my configs, and then I can add inputs at the top level, and import module configurations for all of my setup. Is there and idiomatic way for one of those modules included by modules to also be able to add their own flakes, or do you need to bring them in at the top level input and pass them down to the module using the various ways? | 16:08:45 |
ttamttam | In reply to @metasyntactic:matrix.org So, I have my main flake that I use for all my configs, and then I can add inputs at the top level, and import module configurations for all of my setup. Is there and idiomatic way for one of those modules included by modules to also be able to add their own flakes, or do you need to bring them in at the top level input and pass them down to the module using the various ways? You could turn your module into a flake, and then include that in the inputs. I'm not aware of a way to add inputs from inside a module, although that doesn't mean it doesn't exist. I just pass them down from the top level. | 21:57:38 |