!ayCRiZriCVtuCUpeLp:nixos.org

Nix Cross Compiling

551 Members
118 Servers

Load older messages


SenderMessageTime
12 Oct 2025
@qyliss:fairydust.spaceAlyssa Rossthere is no mass rebuild12:07:29
@qyliss:fairydust.spaceAlyssa Rossthe reason i haven't merged it straight away is that I am still sick12:07:36
@matthewcroughan:defenestrate.itmatthewcroughanYeah I'm just trying to learn, because in some cases it appears that people fear a mass rebuild 12:07:56
@qyliss:fairydust.spaceAlyssa Rossin this case the labels tell you there isn't one :)12:08:06
@matthewcroughan:defenestrate.itmatthewcroughanAnd if there is, when do you decide it's okay to do the merge?12:09:05
@qyliss:fairydust.spaceAlyssa Rosshttps://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#changes-causing-mass-rebuilds12:10:17
@matthewcroughan:defenestrate.itmatthewcroughanOh12:10:53
@matthewcroughan:defenestrate.itmatthewcroughanSo with staging anything is fair game?12:10:59
@qyliss:fairydust.spaceAlyssa Rossyes, that's the point of staging12:11:06
@matthewcroughan:defenestrate.itmatthewcroughanSo if you just target staging instead of staging-next, it's okay?12:11:08
@qyliss:fairydust.spaceAlyssa Rossyes12:11:14
@matthewcroughan:defenestrate.itmatthewcroughanI did not get that, I do now, thanks12:11:19
@qyliss:fairydust.spaceAlyssa Ross:)12:11:50
@matthewcroughan:defenestrate.itmatthewcroughanSo can I test and merge it?12:24:57
@onny:matrix.orgonny joined the room.12:25:10
@onny:matrix.orgonny

i'm using this flake.nix to build my riscv system locally and push it via ssh to the riscv-board:

{

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
  };

  outputs = { self, nixpkgs, nixos-hardware, ... }@inputs: {
    nixosConfigurations = {
      # Native machine build
      picloudrv = nixpkgs.lib.nixosSystem rec {
        system = "riscv64-linux";

        pkgs = import nixpkgs;

	specialArgs = { inherit inputs; };
        modules = [
          ({ pkgs, ... }: {
          })
	  ./configuration.nix
	];
      };

      # Cross machine build, from x86_64
      picloudrv-from-x86_64 = nixpkgs.lib.nixosSystem {
	specialArgs = { inherit inputs; };
        modules = [
          ({ pkgs, ... }: {
          })
          ./configuration.nix
          {
	    imports = [
              "${nixos-hardware}/starfive/visionfive/v2/sd-image-installer.nix"
            ];
            # This is the architecture we build from (pkgs.system from above)
            nixpkgs.buildPlatform = "x86_64-linux";
            # pkgsCross.<yourtarget>.system
            nixpkgs.hostPlatform = "riscv64-linux";
          }
        ];
      };
    };
  };
}

i'm trying to patch the app plausible to use tailwindcss_3 from the build machine since it is not available for riscv ( https://github.com/NixOS/nixpkgs/pull/447495/files )

 config :tailwind, path: "${lib.getExe pkgsBuildHost.tailwindcss_3}"

somehow the build process is still trying to compile taildwindcss_3 for riscv platform and fails :(

12:28:56
@onny:matrix.orgonny

both this

          163|     config :tailwind, path: "${lib.getExe buildPackages.tailwindcss_3}"

and this

       … from call site
         at /nix/store/wyfpjl27b10ikdlfi5ibb2fbr60sqi0r-source/pkgs/by-name/pl/plausible/package.nix:165:32:
          164|     cat >> config/config.exs <<EOF
          165|     config :tailwind, path: "${lib.getExe pkgsBuildHost.tailwindcss_3}"
             |                                ^
          166|     config :esbuild, path: "${lib.getExe esbuild}"

result in

         at /nix/store/j8g50snzvr3618ggrhcgpc8534rk5mh6-source/pkgs/by-name/ta/tailwindcss_3/package.nix:9:17:
            8|   inherit (stdenv.hostPlatform) system;
            9|   throwSystem = throw "tailwindcss has not been packaged for ${system} yet.";
             |                 ^
           10|

       error: tailwindcss has not been packaged for riscv64-linux yet.
12:43:34
@qyliss:fairydust.spaceAlyssa Rossyeah12:59:46
@matthewcroughan:defenestrate.itmatthewcroughan
In file included from /nix/store/p6xsnza312a09bbs7vka0mwy6gai7174-musl-1.2.5-dev/include/resolv.h:6,
                 from ../include/utils.h:7,
                 from bridge.c:6:
/nix/store/p6xsnza312a09bbs7vka0mwy6gai7174-musl-1.2.5-dev/include/netinet/in.h:23:8: error: redefinition of ‘struct in6_addr’
   23 | struct in6_addr {
      |        ^~~~~~~~
In file included from ../include/uapi/linux/if_bridge.h:19,
                 from ../include/bridge.h:5,
                 from bridge.c:5:
../include/uapi/linux/in6.h:33:8: note: originally defined here
   33 | struct in6_addr {
      |        ^~~~~~~~
/nix/store/p6xsnza312a09bbs7vka0mwy6gai7174-musl-1.2.5-dev/include/netinet/in.h:34:8: error: redefinition of ‘struct sockaddr_in6’
   34 | struct sockaddr_in6 {
      |        ^~~~~~~~~~~~
../include/uapi/linux/in6.h:50:8: note: originally defined here
   50 | struct sockaddr_in6 {
      |        ^~~~~~~~~~~~
/nix/store/p6xsnza312a09bbs7vka0mwy6gai7174-musl-1.2.5-dev/include/netinet/in.h:42:8: error: redefinition of ‘struct ipv6_mreq’
   42 | struct ipv6_mreq {
13:09:25
@matthewcroughan:defenestrate.itmatthewcroughanWhat happened with iproute?13:09:28
@qyliss:fairydust.spaceAlyssa RossYureka is already on that one too: https://lore.kernel.org/netdev/20251012124002.296018-1-yureka@cyberchaos.dev/13:26:53
@matthewcroughan:defenestrate.itmatthewcroughanHow they figured that one out, I have no idea 13:29:16
@matthewcroughan:defenestrate.itmatthewcroughanlots of trial and error I guess 13:29:21
@matthewcroughan:defenestrate.itmatthewcroughanyep, that patch works13:33:04
@matthewcroughan:defenestrate.itmatthewcroughan next up is glibc-nolibgcc-aarch64-unknown-linux-musl 13:34:15
@matthewcroughan:defenestrate.itmatthewcroughan
aarch64-unknown-linux-musl-gcc getdate.c -c -std=gnu11 -fgnu89-inline  -g -O2 -Wall -Wwrite-strings -Wundef -Werror -fmerge-all-constants -frounding-math -fstack-protector-strong -fno-common -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=2 -Wstrict-prototypes -Wold-style-definition -fmath-errno    -fPIC   -fexceptions  -ftls-model=initial-exec     -I../include -I/build/build/time  -I/bui>
In file included from <command-line>:
../sysdeps/unix/sysv/linux/gettimeofday.c:56:29: error: ‘gettimeofday’ alias between functions of incompatible types ‘int(struct timeval *, void *)’ and ‘int (*(void))(struct timeval *, void *)’ [-Werror=attribute-alias=]
   56 | weak_alias (__gettimeofday, gettimeofday)
      |                             ^~~~~~~~~~~~
./../include/libc-symbols.h:155:26: note: in definition of macro ‘_weak_alias’
  155 |   extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))) \
      |                          ^~~~~~~~~
../sysdeps/unix/sysv/linux/gettimeofday.c:56:1: note: in expansion of macro ‘weak_alias’
   56 | weak_alias (__gettimeofday, gettimeofday)
      | ^~~~~~~~~~
../sysdeps/unix/sysv/linux/gettimeofday.c:42:13: note: aliased declaration here
   42 | libc_ifunc (__gettimeofday,
      |             ^~~~~~~~~~~~~~
./../include/libc-symbols.h:672:25: note: in definition of macro ‘__ifunc_resolver’
  672 |   __typeof (type_name) *name##_ifunc (__VA_ARGS__)                      \
      |                         ^~~~
./../include/libc-symbols.h:710:3: note: in expansion of macro ‘__ifunc_args’
  710 |   __ifunc_args (type_name, name, expr, init, arg)
      |   ^~~~~~~~~~~~
./../include/libc-symbols.h:794:32: note: in expansion of macro ‘__ifunc’
  794 | #define libc_ifunc(name, expr) __ifunc (name, name, expr, void, INIT_ARCH)
      |                                ^~~~~~~
../sysdeps/unix/sysv/linux/gettimeofday.c:42:1: note: in expansion of macro ‘libc_ifunc’
   42 | libc_ifunc (__gettimeofday,
      | ^~~~~~~~~~
13:34:39
@qyliss:fairydust.spaceAlyssa Rossthat sounds like something that probably shouldn't even be attempted...13:38:54
@matthewcroughan:defenestrate.itmatthewcroughanthis is pkgsMusl.pkgsLLVM 13:39:32
@matthewcroughan:defenestrate.itmatthewcroughanor should be 13:39:34
@matthewcroughan:defenestrate.itmatthewcroughanHmm, and it looks like the systemd-minimal patch issues are still on staging-next13:42:35

Show newer messages


Back to Room ListRoom Version: 6