From b8877c5dc049fcb0b99cdb8d4d3aada256d9c37c Mon Sep 17 00:00:00 2001
From: elkowar <5300871+elkowar@users.noreply.github.com>
Date: Wed, 18 Aug 2021 16:01:50 +0200
Subject: [PATCH] Add migration to readme
---
README.md | 16 ++++--
YUCK_MIGRATION.md | 29 +++++++++++
examples/eww-bar/eww.xml | 104 ---------------------------------------
3 files changed, 41 insertions(+), 108 deletions(-)
create mode 100644 YUCK_MIGRATION.md
delete mode 100644 examples/eww-bar/eww.xml
diff --git a/README.md b/README.md
index 235efe7..d3d700b 100644
--- a/README.md
+++ b/README.md
@@ -4,19 +4,27 @@
-Elkowar’s Wacky Widgets is a standalone widget system made in Rust that allows you to implement
+Elkowars Wacky Widgets is a standalone widget system made in Rust that allows you to implement
your own, custom widgets in any window manager.
Documentation **and instructions on how to install** can be found [here](https://elkowar.github.io/eww).
-## New configuration language needs a name - USER OPINIONS NEEDED
+## New configuration language!
-The rework of the configuration language has been decided on. Now, we just need a name!
-Please give your opinions in the [discussion post](https://github.com/elkowar/eww/discussions/206).
+YUCK IS ALIVE! After months of waiting, the new configuration language has now been released!
+This also means that XML is no longer supported from this point onwards.
+If you want to keep using the latest releases of eww, you'll need to migrate your config over to yuck.
+
+The steps to migrate can be found in [the migration guide](YUCK_MIGRATION.md)
+
+Additionally, a couple _amazing_ people have started to work on an
+[automatic converter](https://github.com/undefinedDarkness/ewwxml) that can turn your old eww.xml into the new yuck format!
## Examples
+(note that some of these still make use of the old configuration syntax)
+
* A basic bar, see [examples](./examples/eww-bar)

diff --git a/YUCK_MIGRATION.md b/YUCK_MIGRATION.md
new file mode 100644
index 0000000..d46d90c
--- /dev/null
+++ b/YUCK_MIGRATION.md
@@ -0,0 +1,29 @@
+# Migrating to yuck
+
+Yuck is the new configuration syntax used by eww.
+While the syntax has changed dramatically, the general structure of the configuration
+has stayed mostly the same.
+
+Most notably, the top-level blocks are now gone.
+This means that `defvar`, `defwidget`, etc blocks no longer need to be in separate
+sections of the file, but instead can be put wherever you need them.
+
+Explaining the exact syntax of yuck would be significantly less effective than just
+looking at an example, as the general syntax is very simple.
+
+Thus, to get a feel for yuck, read through the [example configuration](./examples/eww-bar/eww.yuck).
+
+
+Additionally, a couple smaller things have been changed.
+The fields and structure of the `defwindow` block as been adjusted to better reflect
+the options provided by the displayserver that is being used.
+The major changes are:
+- The `screen` field is now called `monitor`
+- `reserve` and `geometry` are now structured slightly differently
+To see how exactly the configuration now looks, check the [respective documentation](./docs/src/configuration.md#creating-your-first-window)
+
+
+## Automatically converting your configuration
+
+A couple _amazing_ people have started to work on an [automatic converter](https://github.com/undefinedDarkness/ewwxml) that can turn your
+old eww.xml into the new yuck format!
diff --git a/examples/eww-bar/eww.xml b/examples/eww-bar/eww.xml
deleted file mode 100644
index 4c6e0af..0000000
--- a/examples/eww-bar/eww.xml
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{music}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{hour}}:{{min}} {{month}} {{number_day}}, {{year_full}}
-
-
-
-
-
-
-
-
- playerctl metadata --format '{{ artist }} - {{ title }}'
-
-
-
-
-
- ~/.config/eww/scripts/getvol
-
-
- date "+%d"
- date "+%b"
- date "+%M"
- date "+%H"
- date "+%Y"
-
-
- ~/.config/eww/scripts/getram
-
-
- cat /sys/class/power_supply/BAT0/capacity
-
-
-
-
-
-
-
-
-
-
-
-
-
-