Stop accidentally sharing GitHub/GitLab PATs with Codeberg, Mullvad (#2423)

This commit is contained in:
Imran Remtulla
2025-07-25 09:37:43 -04:00
parent 48a8ebabbb
commit 4680401808
5 changed files with 13 additions and 7 deletions

View File

@@ -3,7 +3,7 @@ import 'package:obtainium/custom_errors.dart';
import 'package:obtainium/providers/source_provider.dart';
class Codeberg extends AppSource {
GitHub gh = GitHub();
GitHub gh = GitHub(hostChanged: true);
Codeberg() {
name = 'Forgejo (Codeberg)';
hosts = ['codeberg.org'];

View File

@@ -112,13 +112,17 @@ class FDroid extends AppSource {
bool isGitHub = false;
bool isGitLab = false;
try {
GitHub().sourceSpecificStandardizeURL(details.changeLog!);
GitHub(
hostChanged: true,
).sourceSpecificStandardizeURL(details.changeLog!);
isGitHub = true;
} catch (e) {
//
}
try {
GitLab().sourceSpecificStandardizeURL(details.changeLog!);
GitLab(
hostChanged: true,
).sourceSpecificStandardizeURL(details.changeLog!);
isGitLab = true;
} catch (e) {
//

View File

@@ -13,10 +13,11 @@ import 'package:obtainium/providers/source_provider.dart';
import 'package:url_launcher/url_launcher_string.dart';
class GitHub extends AppSource {
GitHub() {
GitHub({hostChanged = false}) {
hosts = ['github.com'];
appIdInferIsOptional = true;
showReleaseDateAsVersionToggle = true;
this.hostChanged = hostChanged;
sourceConfigSettingFormItems = [
GeneratedFormTextField(

View File

@@ -12,10 +12,11 @@ import 'package:easy_localization/easy_localization.dart';
import 'package:url_launcher/url_launcher_string.dart';
class GitLab extends AppSource {
GitLab() {
GitLab({bool hostChanged = false}) {
hosts = ['gitlab.com'];
canSearch = true;
showReleaseDateAsVersionToggle = true;
this.hostChanged = hostChanged;
sourceConfigSettingFormItems = [
GeneratedFormTextField(
@@ -144,7 +145,7 @@ class GitLab extends AppSource {
Map<String, dynamic> additionalSettings,
) async {
// Prepare request params
var names = GitHub().getAppNames(standardUrl);
var names = GitHub(hostChanged: true).getAppNames(standardUrl);
String projectUriComponent =
'${Uri.encodeComponent(names.author)}%2F${Uri.encodeComponent(names.name)}';
String? PAT = await getPATIfAny(hostChanged ? additionalSettings : {});

View File

@@ -55,7 +55,7 @@ class Mullvad extends AppSource {
}
String? changeLog;
try {
changeLog = (await GitHub().getLatestAPKDetails(
changeLog = (await GitHub(hostChanged: true).getLatestAPKDetails(
'https://github.com/mullvad/mullvadvpn-app',
{'fallbackToOlderReleases': true},
)).changeLog;