diff --git a/helpers/DATA/nheko/001_hidde_sso_promotion_with_main_stream_services.patch b/helpers/DATA/nheko/001_hidde_sso_promotion_with_main_stream_services.patch new file mode 100644 index 0000000..c45bf43 --- /dev/null +++ b/helpers/DATA/nheko/001_hidde_sso_promotion_with_main_stream_services.patch @@ -0,0 +1,66 @@ +diff --git a/src/LoginPage.cpp b/src/LoginPage.cpp_ +index 6c7e49fd..001c9f99 100644 +--- a/src/LoginPage.cpp ++++ b/src/LoginPage.cpp_ +@@ -207,33 +207,34 @@ LoginPage::checkHomeserverVersion() + bool ssoSupported = false; + bool passwordSupported = false; + for (const auto &flow : flows.flows) { +- if (flow.type == mtx::user_interactive::auth_types::sso) { +- ssoSupported = true; +- +- for (const auto &idp : flow.identity_providers) { +- SSOProvider prov; +- if (idp.brand == "apple") +- prov.name_ = tr("Sign in with Apple"); +- else if (idp.brand == "facebook") +- prov.name_ = tr("Continue with Facebook"); +- else if (idp.brand == "google") +- prov.name_ = tr("Sign in with Google"); +- else if (idp.brand == "twitter") +- prov.name_ = tr("Sign in with Twitter"); +- else +- prov.name_ = tr("Login using %1").arg(QString::fromStdString(idp.name)); +- +- prov.avatarUrl_ = QString::fromStdString(idp.icon); +- prov.id_ = QString::fromStdString(idp.id); +- idps.push_back(QVariant::fromValue(prov)); +- } +- +- if (flow.identity_providers.empty()) { +- SSOProvider prov; +- prov.name_ = tr("SSO LOGIN"); +- idps.push_back(QVariant::fromValue(prov)); +- } +- } else if (flow.type == mtx::user_interactive::auth_types::password) { ++// if (flow.type == mtx::user_interactive::auth_types::sso) { ++// ssoSupported = true; ++// ++// for (const auto &idp : flow.identity_providers) { ++// SSOProvider prov; ++// if (idp.brand == "apple") ++// prov.name_ = tr("Sign in with Apple"); ++// else if (idp.brand == "facebook") ++// prov.name_ = tr("Continue with Facebook"); ++// else if (idp.brand == "google") ++// prov.name_ = tr("Sign in with Google"); ++// else if (idp.brand == "twitter") ++// prov.name_ = tr("Sign in with Twitter"); ++// else ++// prov.name_ = tr("Login using %1").arg(QString::fromStdString(idp.name)); ++// ++// prov.avatarUrl_ = QString::fromStdString(idp.icon); ++// prov.id_ = QString::fromStdString(idp.id); ++// idps.push_back(QVariant::fromValue(prov)); ++// } ++// ++// if (flow.identity_providers.empty()) { ++// SSOProvider prov; ++// prov.name_ = tr("SSO LOGIN"); ++// idps.push_back(QVariant::fromValue(prov)); ++// } ++// } else if (flow.type == mtx::user_interactive::auth_types::password) { ++ if (flow.type == mtx::user_interactive::auth_types::password) { + passwordSupported = true; + } + } diff --git a/helpers/make-nheko b/helpers/make-nheko new file mode 100644 index 0000000..9fb6fb2 --- /dev/null +++ b/helpers/make-nheko @@ -0,0 +1,30 @@ +#!/bin/sh +# +# Copyright (C) 2024 Luis Guzman +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +VERSION=1 +EXTERNAL='deb-src http://archive.ubuntu.com/ubuntu noble universe' +BACKPORT=true + +. ./config + +patch_p1 $DATA/001_hidde_sso_promotion_with_main_stream_services.patch + +changelog "Backported from noble to improve matrix support on Aramo and hide promotion of privacy conflicting SSO services." + +package