diff --git a/overlays/default.nix b/overlays/default.nix index bb52518..63514d4 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -1,6 +1,6 @@ builtins.map (path: import path) [ ./discord.nix - #./eww.nix + ./eww.nix ./material-icons.nix ./picom.nix ./rofi.nix diff --git a/overlays/eww.nix b/overlays/eww.nix index f244a51..7846cdc 100644 --- a/overlays/eww.nix +++ b/overlays/eww.nix @@ -1,6 +1,10 @@ self: super: { eww = super.eww.overrideAttrs (old: rec { - # Use normal scroll events instead of smooth scroll ( due to https://bugzilla.gnome.org/show_bug.cgi?id=675959 ) - patches = old.patches ++ [ ./patches/eww.patch ]; + patches = old.patches ++ [ + # Use normal scroll events instead of smooth scroll ( due to https://bugzilla.gnome.org/show_bug.cgi?id=675959 ) + ./patches/eww.patch + # Backport https://github.com/elkowar/eww/pull/711 + ./patches/eww-box.patch + ]; }); } diff --git a/overlays/patches/eww-box.patch b/overlays/patches/eww-box.patch new file mode 100644 index 0000000..5bb3dab --- /dev/null +++ b/overlays/patches/eww-box.patch @@ -0,0 +1,57 @@ +From fba770255dd72db8301b5f51ef50ab59e7746515 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C3=A9clairevoyant?= + <848000+eclairevoyant@users.noreply.github.com> +Date: Mon, 20 Mar 2023 07:40:36 -0400 +Subject: [PATCH] remove box_syntax (#711) + +Rust removed support for box_syntax in a recent nightly release :'( +--- + crates/eww/src/main.rs | 1 - + crates/simplexpr/src/eval.rs | 8 ++++---- + crates/simplexpr/src/lib.rs | 1 - + 3 files changed, 4 insertions(+), 6 deletions(-) + +diff --git a/crates/eww/src/main.rs b/crates/eww/src/main.rs +index 8e51a626..14bc8190 100644 +--- a/crates/eww/src/main.rs ++++ b/crates/eww/src/main.rs +@@ -1,6 +1,5 @@ + #![feature(trace_macros)] + #![feature(drain_filter)] +-#![feature(box_syntax)] + #![feature(box_patterns)] + #![feature(slice_concat_trait)] + #![feature(try_blocks)] +diff --git a/crates/simplexpr/src/eval.rs b/crates/simplexpr/src/eval.rs +index d0b48115..76f811da 100644 +--- a/crates/simplexpr/src/eval.rs ++++ b/crates/simplexpr/src/eval.rs +@@ -69,13 +69,13 @@ impl SimplExpr { + pub fn try_map_var_refs Result + Copy>(self, f: F) -> Result { + use SimplExpr::*; + Ok(match self { +- BinOp(span, box a, op, box b) => BinOp(span, box a.try_map_var_refs(f)?, op, box b.try_map_var_refs(f)?), ++ BinOp(span, box a, op, box b) => BinOp(span, Box::new(a.try_map_var_refs(f)?), op, Box::new(b.try_map_var_refs(f)?)), + Concat(span, elems) => Concat(span, elems.into_iter().map(|x| x.try_map_var_refs(f)).collect::>()?), +- UnaryOp(span, op, box a) => UnaryOp(span, op, box a.try_map_var_refs(f)?), ++ UnaryOp(span, op, box a) => UnaryOp(span, op, Box::new(a.try_map_var_refs(f)?)), + IfElse(span, box a, box b, box c) => { +- IfElse(span, box a.try_map_var_refs(f)?, box b.try_map_var_refs(f)?, box c.try_map_var_refs(f)?) ++ IfElse(span, Box::new(a.try_map_var_refs(f)?), Box::new(b.try_map_var_refs(f)?), Box::new(c.try_map_var_refs(f)?)) + } +- JsonAccess(span, box a, box b) => JsonAccess(span, box a.try_map_var_refs(f)?, box b.try_map_var_refs(f)?), ++ JsonAccess(span, box a, box b) => JsonAccess(span, Box::new(a.try_map_var_refs(f)?), Box::new(b.try_map_var_refs(f)?)), + FunctionCall(span, name, args) => { + FunctionCall(span, name, args.into_iter().map(|x| x.try_map_var_refs(f)).collect::>()?) + } +diff --git a/crates/simplexpr/src/lib.rs b/crates/simplexpr/src/lib.rs +index 205b2989..8a402877 100644 +--- a/crates/simplexpr/src/lib.rs ++++ b/crates/simplexpr/src/lib.rs +@@ -1,6 +1,5 @@ + #![feature(box_patterns)] + #![feature(pattern)] +-#![feature(box_syntax)] + #![feature(try_blocks)] + #![feature(unwrap_infallible)] + #![feature(never_type)]