lorri
lorri copied to clipboard
Crash report from lorri
Describe the bug
Got a thread caused non-unwinding panic. aborting. and was asked to submit a crash report.
To Reproduce Steps to reproduce the behavior:
lorri watch
Expected behavior Lorri watch to complete build without fail
Metadata
name = 'lorri'
operating_system = 'unix:Unknown'
crate_version = '1.6.0'
explanation = '''
Panic occurred in file 'library/core/src/panicking.rs' at line 126
'''
cause = 'panic in a function that cannot unwind'
method = 'Panic'
backtrace = '''
0: 0x56550b165a47 - core::panicking::panic_nounwind::h6472c08d4f546031
1: 0x56550b165ae3 - core::panicking::panic_cannot_unwind::h75a2a12f84e4c675
2: 0x56550b1c4930 - lorri::run_async::Async<Res>::block::h7745a80ae84dd981
3: 0x56550b1e3b80 - lorri::ops::watch::hc9b8d16578b0448c
4: 0x56550b167dac - lorri::main::h166a684183b706f6
5: 0x56550b16ed03 - std::sys_common::backtrace::__rust_begin_short_backtrace::h192a5b559516115b
6: 0x56550b16d159 - std::rt::lang_start::{{closure}}::h53ed71a0308f27a7
7: 0x56550b38c957 - std::rt::lang_start_internal::h691452d5fd9810c0
8: 0x56550b169165 - main
9: 0x7f87b3fb2fce - __libc_start_call_main
10: 0x7f87b3fb3089 - __libc_start_main_impl
11: 0x56550b165de5 - _start
12: 0x0 - <unresolved>'''
$ lorri info
[I] deck@steamdeck ~/b/g/utreexo> lorri info
error: The following required arguments were not provided:
--shell-file <nix_file>
USAGE:
lorri info --shell-file <nix_file>
For more information try --help
[I] deck@steamdeck ~/b/g/utreexo> lorri info --shell-file shell.nix
GC roots exist, shell_gc_root: /home/deck/.cache/lorri/gc_roots/7b31e7bce9165b04d3806fff9dbcc1d6/gc_root/shell_gc_root
[N] deck@steamdeck ~/b/g/utreexo> lorri info --shell-file ./shell.nix
GC roots do not exist. Has the project been built with lorri yet?
$ uname -a
Linux steamdeck 6.1.52-valve9-1-neptune-61 #1 SMP PREEMPT_DYNAMIC Wed, 22 Nov 2023 23:43:34 +0000 x86_64 GNU/Linux
Additional context Not sure if it helps but I was trying to build this shell.nix file:
let
pkgs = import <nixpkgs> {};
PROJECT_ROOT = builtins.getEnv "PWD";
in
with pkgs;
stdenv.mkDerivation rec {
name = "utreexo";
env = buildEnv { name = name; paths = buildInputs; };
nativeBuildInputs = [
pkg-config
autoreconfHook
glibc
binutils
];
buildInputs = [
#go
go
gopls
graphviz # needed for pprof
#golangci-lint
# cpp bitcoin deps
openssl
db48
boost
zlib
zeromq
miniupnpc
libevent
utillinux
python38Packages.pyzmq
ccache
ctags
gmp.dev
gmp.out
ncurses.dev
ncurses.out
valgrind
];
shellHook = ''
export GOPATH=${PROJECT_ROOT}/go
export PATH=${PROJECT_ROOT}/go/bin:$PATH
export GOENV=${PROJECT_ROOT}/go/env
export NIX_SHELL_ENV=${name}
export USE_BOOST_LIBDIR="${boost.out}/lib"
export LD_LIBRARY_PATH=${PROJECT_ROOT}/lib
'';
}
EDIT: Might be a steam-deck specific permissions issue. Used sudo and it works?
[I] deck@steamdeck ~/b/g/utreexo [SIGABRT]> sudo lorri watch
Dec 02 03:26:15.252 INFO build message, message: BuildEvent(Started { nix_file: NixFile(AbsPathBuf("/home/deck/bitcoin-projects/go/utreexo/shell.nix")), reason: PingReceived }), nix_file: /home/deck/bitcoin-projects/go/utreexo/shell.nix
Dec 02 03:26:17.481 INFO build message, message: BuildEvent(Completed { nix_file: NixFile(AbsPathBuf("/home/deck/bitcoin-projects/go/utreexo/shell.nix")), rooted_output_paths: OutputPath { shell_gc_root: RootPath(AbsPathBuf("/root/.cache/lorri/gc_roots/7b31e7bce9165b04d3806fff9dbcc1d6/gc_root/shell_gc_root")) } }), nix_file: /home/deck/bitcoin-projects/go/utreexo/shell.nix
^C⏎ [I] deck@steamdeck ~/b/g/utreexo [SIGINT]>
Though the steamos-readonly option is already disabled.
[I] deck@steamdeck ~/b/g/utreexo [1]> sudo steamos-readonly disable
Warning: The rootfs is already read-write!
Nothing is performed.
I've run across a couple of issues with read-only filesystems and Lorri - I've always gotten useful panics out of them. I'm not super familiar with the Steam deck though so it's hard to speculate as to the cause
Is it possible this is related to https://github.com/nix-community/lorri/issues/119#issuecomment-2195297067 ?
This bug is fixed in 1.7.0, which is in nixpkgs as of NixOS 24.05. Thank you for your patience!