Skip to content

nix install - Edit Menu - No response #4

@jsavage

Description

@jsavage

Hi, thanks for your work on this. I am similarly fascinated by STPA and control structures as a way of making sense of conceptual descriptions of systems or analysing them. I am not familiar with nix or rust but thought I would have a go at installing nix and depict-desktop on a relatively new install of ubuntu 24.04.2. When I execute the app I see the window with a 'Depict' and and 'Edit' Menu. Both choices under Depict (Close and quit) appear to do just that. However, nothing appears to happen when Edit is selected. Warnings sent to terminal as follows : That the last line in what follows appears when Edit is selected from the menu.

`jsavage@U20:~$ /nix/store/sbs7ziqpwxzh7qk1zxc51dsgsjhc3l7y-depict-desktop-0.2/bin/depict-desktop

(process:537819): Gtk-WARNING **: 21:10:44.326: Locale not supported by C library.
Using the fallback 'C' locale.
Gtk-Message: 21:10:44.407: Failed to load module "canberra-gtk-module"
Gtk-Message: 21:10:44.410: Failed to load module "canberra-gtk-module"

(process:537834): Gtk-WARNING **: 21:10:44.603: Locale not supported by C library.
Using the fallback 'C' locale.
Gtk-Message: 21:10:44.680: Failed to load module "canberra-gtk-module"
Gtk-Message: 21:10:44.683: Failed to load module "canberra-gtk-module"
Cannot get default EGL display: EGL_BAD_PARAMETER
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)
MERGE Text("a") Sq([Text("b")])
CASE Seq Text Sq
-> Seq([Text("a"), Sq([Text("b")])])
MERGE Text("c") Text("-")
CASE Seq Text Text
-> Seq([Text("c"), Text("-")])
MERGE Text("a") Seq([Text("c"), Text("-")])
CASE Seq Text Seq
-> Seq([Text("a"), Text("c"), Text("-")])
MERGE Text("d") Text("-")
CASE Seq Text Text
-> Seq([Text("d"), Text("-")])
MERGE Text("b") Seq([Text("d"), Text("-")])
CASE Seq Text Seq
-> Seq([Text("b"), Text("d"), Text("-")])
MERGE Text("c") Text("d")
CASE Seq Text Text
-> Seq([Text("c"), Text("d")])
PARSE [
Seq(
[
Text(
"a",
),
Sq(
[
Text(
"b",
),
],
),
],
),
Seq(
[
Text(
"a",
),
Text(
"c",
),
Text(
"-",
),
],
),
Seq(
[
Text(
"b",
),
Text(
"d",
),
Text(
"-",
),
],
),
Seq(
[
Text(
"c",
),
Text(
"d",
),
],
),
]
VISIT ITEM: Seq([Text("a"), Sq([Text("b")])])
VISIT SEQ: [Text("a"), Sq([Text("b")])]
STACK: [Nest]
STACK: [Nest, NestHead]
VISIT ITEM: Text("a")
VISIT TEXT: a
...
POP
STACK: [Nest, NestBody]
VISIT ITEM: Sq([Text("b")])
VISIT SQ: [Text("b")]
VISIT ITEM: Text("b")
VISIT TEXT: b
...
PUSH Process {
name: None,
label: Some(
"b",
),
body: None,
style: None,
}
-> Process { name: None, label: None, body: None, style: None }
...
POP
POP
...
PUSH Process {
name: None,
label: Some(
"a",
),
body: Some(
All(
[
Process {
name: None,
label: Some(
"b",
),
body: None,
style: None,
},
],
),
),
style: None,
}
VISIT ITEM: Seq([Text("a"), Text("c"), Text("-")])
VISIT SEQ: [Text("a"), Text("c"), Text("-")]
STACK: [Chain]
STACK: [Chain, ChainPath]
VISIT ITEM: Text("a")
VISIT TEXT: a
...
VISIT ITEM: Text("c")
VISIT TEXT: c
...
VISIT ITEM: Text("-")
VISIT TEXT: -
...
POP
POP
...
PUSH Chain {
name: None,
rel: Horizontal,
path: [
Process {
name: None,
label: Some(
"a",
),
body: None,
style: None,
},
Process {
name: None,
label: Some(
"c",
),
body: None,
style: None,
},
],
labels: [],
style: None,
}
VISIT ITEM: Seq([Text("b"), Text("d"), Text("-")])
VISIT SEQ: [Text("b"), Text("d"), Text("-")]
STACK: [Chain]
STACK: [Chain, ChainPath]
VISIT ITEM: Text("b")
VISIT TEXT: b
...
VISIT ITEM: Text("d")
VISIT TEXT: d
...
VISIT ITEM: Text("-")
VISIT TEXT: -
...
POP
POP
...
PUSH Chain {
name: None,
rel: Horizontal,
path: [
Process {
name: None,
label: Some(
"b",
),
body: None,
style: None,
},
Process {
name: None,
label: Some(
"d",
),
body: None,
style: None,
},
],
labels: [],
style: None,
}
VISIT ITEM: Seq([Text("c"), Text("d")])
VISIT SEQ: [Text("c"), Text("d")]
STACK: [Chain]
STACK: [Chain, ChainPath]
VISIT ITEM: Text("c")
VISIT TEXT: c
...
VISIT ITEM: Text("d")
VISIT TEXT: d
...
POP
POP
...
PUSH Chain {
name: None,
rel: Vertical,
path: [
Process {
name: None,
label: Some(
"c",
),
body: None,
style: None,
},
Process {
name: None,
label: Some(
"d",
),
body: None,
style: None,
},
],
labels: [],
style: None,
}
EVAL Process {
name: None,
label: None,
body: Some(
All(
[
Process {
name: None,
label: Some(
"a",
),
body: Some(
All(
[
Process {
name: None,
label: Some(
"b",
),
body: None,
style: None,
},
],
),
),
style: None,
},
Chain {
name: None,
rel: Horizontal,
path: [
Process {
name: None,
label: Some(
"a",
),
body: None,
style: None,
},
Process {
name: None,
label: Some(
"c",
),
body: None,
style: None,
},
],
labels: [],
style: None,
},
Chain {
name: None,
rel: Horizontal,
path: [
Process {
name: None,
label: Some(
"b",
),
body: None,
style: None,
},
Process {
name: None,
label: Some(
"d",
),
body: None,
style: None,
},
],
labels: [],
style: None,
},
Chain {
name: None,
rel: Vertical,
path: [
Process {
name: None,
label: Some(
"c",
),
body: None,
style: None,
},
Process {
name: None,
label: Some(
"d",
),
body: None,
style: None,
},
],
labels: [],
style: None,
},
],
),
),
style: None,
}
STYLE PROCESS: None None Some(All([Process { name: None, label: Some("a"), body: Some(All([Process { name: None, label: Some("b"), body: None, style: None }])), style: None }, Chain { name: None, rel: Horizontal, path: [Process { name: None, label: Some("a"), body: None, style: None }, Process { name: None, label: Some("c"), body: None, style: None }], labels: [], style: None }, Chain { name: None, rel: Horizontal, path: [Process { name: None, label: Some("b"), body: None, style: None }, Process { name: None, label: Some("d"), body: None, style: None }], labels: [], style: None }, Chain { name: None, rel: Vertical, path: [Process { name: None, label: Some("c"), body: None, style: None }, Process { name: None, label: Some("d"), body: None, style: None }], labels: [], style: None }])) None
STYLE PROCESS: None Some("a") Some(All([Process { name: None, label: Some("b"), body: None, style: None }])) None
STYLE PROCESS: None Some("b") None None
STYLE CHAIN: None Horizontal [Process { name: None, label: Some("a"), body: None, style: None }, Process { name: None, label: Some("c"), body: None, style: None }] [] None
STYLE PROCESS: None Some("a") None None
STYLE PROCESS: None Some("c") None None
STYLE CHAIN: None Horizontal [Process { name: None, label: Some("b"), body: None, style: None }, Process { name: None, label: Some("d"), body: None, style: None }] [] None
STYLE PROCESS: None Some("b") None None
STYLE PROCESS: None Some("d") None None
STYLE CHAIN: None Vertical [Process { name: None, label: Some("c"), body: None, style: None }, Process { name: None, label: Some("d"), body: None, style: None }] [] None
STYLE PROCESS: None Some("c") None None
STYLE PROCESS: None Some("d") None None
STYLING: Styling {
style_by_name: {},
style_by_arrow: {},
style_by_label: {},
style_by_label_star: {},
}
VCG1:
digraph {
0 [ label = ""b"" ]
1 [ label = ""a"" ]
2 [ label = ""c"" ]
3 [ label = ""d"" ]
1 -> 0 [ label = ""contains"" ]
2 -> 3 [ label = ""implied_vertical"" ]
}

HCG1:
{HorizontalConstraint { a: "a", b: "c" }, HorizontalConstraint { a: "b", b: "d" }}
CONTAINER_BY_NODE: {
"c": None,
"a": None,
"b": Some(
"a",
),
"d": None,
}
adding implied vertical edges 1 for vertical edge c->d
adding implied vertical edges 2 for vertical edge c->d
adding implied horizontal edges 1 for horizontal edge a->c
adding implied horizontal edges 2 for horizontal edge a->c
adding implied horizontal edges 1 for horizontal edge b->d
implied edge1: a->d
adding implied horizontal edges 2 for horizontal edge b->d
VCG2:
digraph {
0 [ label = ""b"" ]
1 [ label = ""a"" ]
2 [ label = ""c"" ]
3 [ label = ""d"" ]
1 -> 0 [ label = ""contains"" ]
2 -> 3 [ label = ""implied_vertical"" ]
1 -> 2 [ label = ""implied_horizontal"" ]
0 -> 3 [ label = ""implied_horizontal"" ]
1 -> 3 [ label = ""implied_horizontal"" ]
}

HCG2:
{HorizontalConstraint { a: "a", b: "c" }, HorizontalConstraint { a: "b", b: "d" }, HorizontalConstraint { a: "a", b: "d" }}
LOC_TO_NODE: [
(
(
0v,
0h,
),
Container(
ObjContainer {
vl: "a",
},
),
),
(
(
0v,
1h,
),
Node(
ObjNode {
vl: "c",
},
),
),
(
(
1v,
0h,
),
Node(
ObjNode {
vl: "b",
},
),
),
(
(
1v,
1h,
),
Node(
ObjNode {
vl: "d",
},
),
),
(
(
1v,
2h,
),
Gap(
ObjGap {
container: "a",
lvl: 1v,
},
),
),
]
HOPS_BY_EDGE: {}
NODE_TO_LOC0: [
(
Container(
ObjContainer {
vl: "a",
},
),
(
0v,
0h,
),
),
(
Node(
ObjNode {
vl: "c",
},
),
(
0v,
1h,
),
),
(
Node(
ObjNode {
vl: "b",
},
),
(
1v,
0h,
),
),
(
Node(
ObjNode {
vl: "d",
},
),
(
1v,
1h,
),
),
(
Gap(
ObjGap {
container: "a",
lvl: 1v,
},
),
(
1v,
2h,
),
),
]
CONTAINER_BY_OBJ: {
Gap(
ObjGap {
container: "a",
lvl: 1v,
},
): None,
Node(
ObjNode {
vl: "b",
},
): Some(
"a",
),
Node(
ObjNode {
vl: "c",
},
): None,
Container(
ObjContainer {
vl: "a",
},
): None,
Node(
ObjNode {
vl: "d",
},
): None,
}
BUBBLES: {
(
1v,
Some(
"a",
),
): [
Node(
ObjNode {
vl: "b",
},
),
],
(
1v,
None,
): [
Node(
ObjNode {
vl: "d",
},
),
Gap(
ObjGap {
container: "a",
lvl: 1v,
},
),
],
(
0v,
None,
): [
Node(
ObjNode {
vl: "c",
},
),
Container(
ObjContainer {
vl: "a",
},
),
],
}
BUBBLE_BY_LOC: {
(
0v,
0h,
): None,
(
1v,
1h,
): None,
(
1v,
2h,
): None,
(
0v,
1h,
): None,
(
1v,
0h,
): Some(
"a",
),
}
BUBBLE_BY_SLVL: {
1: (
1v,
None,
),
0: (
1v,
Some(
"a",
),
),
2: (
0v,
None,
),
}
SHRS: [
[
0,
],
[
0,
1,
],
[
0,
1,
],
]
SEARCH SPACE SIZE: Ok(4)
HOPS_BY_LEVEL2: {
0v: SortedVec {
vec: [
Hop {
mhr: 0h,
nhr: 2h,
vl: "a",
wl: "a",
lvl: 0v,
},
],
},
}
iterations: 4 / elapsed: 0.00 = 35575.79 iter/s
DRAWING ERROR: LayoutError {
source: HeapsError {
error: "no solution found",
},
}

** (depict-desktop:537819): WARNING **: 21:11:09.525: atk-bridge: get_device_events_reply: unknown signature
`

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions