mirror of
https://github.com/NotAShelf/nyxexprs.git
synced 2025-10-01 22:43:39 +00:00
mastodon-bird-ui: 1.8.5 -> 2.1.1
This commit is contained in:
parent
a82369bcae
commit
eee3063ce1
2 changed files with 80 additions and 52 deletions
|
@ -1,64 +1,58 @@
|
||||||
{
|
{
|
||||||
mastodon,
|
mastodon,
|
||||||
yq-go,
|
applyPatches,
|
||||||
fetchurl,
|
fetchFromGitHub,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
mastodon.overrideAttrs (_: {
|
(mastodon.override {
|
||||||
mastodonModules = mastodon.mastodonModules.overrideAttrs (oldAttrs: let
|
patches = [
|
||||||
# https://github.com/ronilaukkarinen/mastodon-bird-ui
|
# Redone based on:
|
||||||
birdui-version = "1.8.5";
|
# <https://codeberg.org/rheinneckar.social/nixos-config/src/branch/main/patches/mastodon-bird-ui.patch>
|
||||||
|
./patches/mastodon-bird-ui.patch
|
||||||
birdui-single-column = fetchurl {
|
];
|
||||||
url = "https://raw.githubusercontent.com/ronilaukkarinen/mastodon-bird-ui/${birdui-version}/layout-single-column.css";
|
}).overrideAttrs (oldAttrs: let
|
||||||
sha256 = "sha256-h3cb0ZiXIUEbx+8CDXPHqKe4u3ZquE90wUr/cmKkhK8=";
|
src = applyPatches {
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "ronilaukkarinen";
|
||||||
|
repo = "mastodon-bird-ui";
|
||||||
|
tag = "2.1.1";
|
||||||
|
hash = "sha256-WEw9wE+iBCLDDTZjFoDJ3EwKTY92+LyJyDqCIoVXhzk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
birdui-multi-column = fetchurl {
|
# based on:
|
||||||
url = "https://raw.githubusercontent.com/ronilaukkarinen/mastodon-bird-ui/${birdui-version}/layout-multiple-columns.css";
|
# https://github.com/ronilaukkarinen/mastodon-bird-ui#make-mastodon-bird-ui-as-optional-by-integrating-it-as-site-theme-in-settings-for-all-users
|
||||||
sha256 = "sha256-NMiBkJUR+HEf+ooJwoBIMiMOKna3odZYF6h4QLIdS84=";
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
pname = "${oldAttrs.pname}+themes";
|
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
# Import theme
|
substituteInPlace layout-single-column.css layout-multiple-columns.css \
|
||||||
local styleDir=$PWD/app/javascript/styles
|
--replace-fail theme-contrast theme-mastodon-bird-ui-contrast \
|
||||||
local birduiDir=$styleDir/mastodon-bird-ui
|
--replace-fail theme-mastodon-light theme-mastodon-bird-ui-light
|
||||||
|
|
||||||
mkdir -p $birduiDir
|
mkdir mastodon-bird-ui
|
||||||
cat ${birdui-single-column} > $birduiDir/layout-single-column.scss
|
mv layout-single-column.css mastodon-bird-ui/layout-single-column.scss
|
||||||
cat ${birdui-multi-column} > $birduiDir/layout-multiple-columns.scss
|
mv layout-multiple-columns.css mastodon-bird-ui/layout-multiple-columns.scss
|
||||||
|
|
||||||
sed -i 's/theme-contrast/theme-mastodon-bird-ui-contrast/g' $birduiDir/layout-single-column.scss
|
echo -e "@import 'contrast/variables';
|
||||||
sed -i 's/theme-mastodon-light/theme-mastodon-bird-ui-light/g' $birduiDir/layout-single-column.scss
|
@import 'application';
|
||||||
|
@import 'contrast/diff';
|
||||||
sed -i 's/theme-contrast/theme-mastodon-bird-ui-contrast/g' $birduiDir/layout-multiple-columns.scss
|
@import 'mastodon-bird-ui/layout-single-column.scss';
|
||||||
sed -i 's/theme-mastodon-light/theme-mastodon-bird-ui-light/g' $birduiDir/layout-multiple-columns.scss
|
@import 'mastodon-bird-ui/layout-multiple-columns.scss';" > mastodon-bird-ui-contrast.scss
|
||||||
|
echo -e "@import 'mastodon-light/variables';
|
||||||
echo -e "@import 'contrast/variables';\n@import 'application';\n@import 'contrast/diff';\n@import 'mastodon-bird-ui/layout-single-column.scss';\n@import 'mastodon-bird-ui/layout-multiple-columns.scss';" >$styleDir/mastodon-bird-ui-contrast.scss
|
@import 'application';
|
||||||
|
@import 'mastodon-light/diff';
|
||||||
echo -e "@import 'mastodon-light/variables';\n@import 'application';\n@import 'mastodon-light/diff';\n@import 'mastodon-bird-ui/layout-single-column.scss';\n@import 'mastodon-bird-ui/layout-multiple-columns.scss';" >$styleDir/mastodon-bird-ui-light.scss
|
@import 'mastodon-bird-ui/layout-single-column.scss';
|
||||||
|
@import 'mastodon-bird-ui/layout-multiple-columns.scss';" > mastodon-bird-ui-light.scss
|
||||||
echo -e "@import 'application';\n@import 'mastodon-bird-ui/layout-single-column.scss';\n@import 'mastodon-bird-ui/layout-multiple-columns.scss';" >$styleDir/mastodon-bird-ui-dark.scss
|
echo -e "@import 'application';
|
||||||
|
@import 'mastodon-bird-ui/layout-single-column.scss';
|
||||||
# Build theme
|
@import 'mastodon-bird-ui/layout-multiple-columns.scss';" > mastodon-bird-ui-dark.scss
|
||||||
echo "mastodon-bird-ui-dark: styles/mastodon-bird-ui-dark.scss" >> $PWD/config/themes.yml
|
|
||||||
echo "mastodon-bird-ui-light: styles/mastodon-bird-ui-light.scss" >> $PWD/config/themes.yml
|
|
||||||
echo "mastodon-bird-ui-contrast: styles/mastodon-bird-ui-contrast.scss" >> $PWD/config/themes.yml
|
|
||||||
'';
|
'';
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
mastodonModules = oldAttrs.mastodonModules.overrideAttrs (oldAttrs: {
|
||||||
|
pname = "mastodon-birdui-theme";
|
||||||
|
|
||||||
|
postPatch =
|
||||||
|
oldAttrs.postPatch or ""
|
||||||
|
+ ''
|
||||||
|
cp -r ${src}/*.scss ${src}/mastodon-bird-ui/ app/javascript/styles/
|
||||||
|
'';
|
||||||
});
|
});
|
||||||
|
|
||||||
nativeBuildInputs = [yq-go];
|
|
||||||
|
|
||||||
postBuild = ''
|
|
||||||
# Make theme available
|
|
||||||
echo "mastodon-bird-ui-dark: styles/mastodon-bird-ui-dark.scss" >> $PWD/config/themes.yml
|
|
||||||
echo "mastodon-bird-ui-light: styles/mastodon-bird-ui-light.scss" >> $PWD/config/themes.yml
|
|
||||||
echo "mastodon-bird-ui-contrast: styles/mastodon-bird-ui-contrast.scss" >> $PWD/config/themes.yml
|
|
||||||
|
|
||||||
yq -i '.en.themes.mastodon-bird-ui-dark = "Mastodon Bird UI (Dark)"' $PWD/config/locales/en.yml
|
|
||||||
yq -i '.en.themes.mastodon-bird-ui-light = "Mastodon Bird UI (Light)"' $PWD/config/locales/en.yml
|
|
||||||
yq -i '.en.themes.mastodon-bird-ui-contrast = "Mastodon Bird UI (High contrast)"' $PWD/config/locales/en.yml
|
|
||||||
'';
|
|
||||||
})
|
})
|
||||||
|
|
34
pkgs/mastodon-bird-ui/patches/mastodon-bird-ui.patch
Normal file
34
pkgs/mastodon-bird-ui/patches/mastodon-bird-ui.patch
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
--- a/config/locales/de.yml 1970-01-01 01:00:01.000000000 +0100
|
||||||
|
+++ b/config/locales/de.yml 2025-03-04 23:10:30.555066004 +0100
|
||||||
|
@@ -1804,6 +1804,9 @@
|
||||||
|
themes:
|
||||||
|
contrast: Mastodon (Hoher Kontrast)
|
||||||
|
default: Mastodon (Dunkel)
|
||||||
|
+ mastodon-bird-ui-contrast: Mastodon Bird UI (Hoher Kontrast)
|
||||||
|
+ mastodon-bird-ui-dark: Mastodon Bird UI (Dunkel)
|
||||||
|
+ mastodon-bird-ui-light: Mastodon Bird UI (Hell)
|
||||||
|
mastodon-light: Mastodon (Hell)
|
||||||
|
system: Automatisch (mit System synchronisieren)
|
||||||
|
time:
|
||||||
|
--- a/config/locales/en.yml 1970-01-01 01:00:01.000000000 +0100
|
||||||
|
+++ b/config/locales/en.yml 2025-03-04 23:11:25.390474198 +0100
|
||||||
|
@@ -1805,6 +1805,9 @@
|
||||||
|
themes:
|
||||||
|
contrast: Mastodon (High contrast)
|
||||||
|
default: Mastodon (Dark)
|
||||||
|
+ mastodon-bird-ui-contrast: Mastodon Bird UI (High contrast)
|
||||||
|
+ mastodon-bird-ui-dark: Mastodon Bird UI (Dark)
|
||||||
|
+ mastodon-bird-ui-light: Mastodon Bird UI (Light)
|
||||||
|
mastodon-light: Mastodon (Light)
|
||||||
|
system: Automatic (use system theme)
|
||||||
|
time:
|
||||||
|
--- a/config/themes.yml 1970-01-01 01:00:01.000000000 +0100
|
||||||
|
+++ b/config/themes.yml 2025-03-04 23:12:24.998956621 +0100
|
||||||
|
@@ -1,3 +1,6 @@
|
||||||
|
default: styles/application.scss
|
||||||
|
contrast: styles/contrast.scss
|
||||||
|
mastodon-light: styles/mastodon-light.scss
|
||||||
|
+mastodon-bird-ui-dark: styles/mastodon-bird-ui-dark.scss
|
||||||
|
+mastodon-bird-ui-contrast: styles/mastodon-bird-ui-contrast.scss
|
||||||
|
+mastodon-bird-ui-light: styles/mastodon-bird-ui-light.scss
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue