Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is it possible to add the IzzyOnDroid Magisk Repository to this app? #104

Closed
ccelik97 opened this issue Jan 10, 2024 · 14 comments · Fixed by #108
Closed

Is it possible to add the IzzyOnDroid Magisk Repository to this app? #104

ccelik97 opened this issue Jan 10, 2024 · 14 comments · Fixed by #108
Labels
android This label targets specifically MMRL on Android devices browser This label targets specifically MMRL on Browsers enhancement New feature or request

Comments

@ccelik97
Copy link

It's here: https://apt.izzysoft.de/magisk.

And yes, for the URL to add to the MRepo app it seems to be the one as well; no .json stuff apparent to me.

So my question is, is it possible to add it to the MMRL app?

@ccelik97 ccelik97 added the enhancement New feature or request label Jan 10, 2024
@DerGoogler
Copy link
Owner

DerGoogler commented Jan 12, 2024

Duplicate of #39. Sorry, MRepo has been archived and it was never clearly planned to add support for it. The MMRL repo format is completely different and includes categories, screenshots, translateable module descriptions and many more.

@DerGoogler DerGoogler closed this as not planned Won't fix, can't repro, duplicate, stale Jan 12, 2024
@DerGoogler DerGoogler added the wontfix This will not be worked on label Jan 12, 2024
@DerGoogler DerGoogler pinned this issue Jan 12, 2024
@IzzySoft
Copy link

Oof! Good I came here (though for a different reason), I didn't notice (yet) MRepo was archived. And Sanmer didn't even mention any background 😢 So it seems I need to set up everything again (my local framework for website etc. was using Sanmer's stuff)…

The MMRL repo format is completely different and includes categories, screenshots, translateable module descriptions and many more.

That is something Sanmer refused to implement (I had asked for that; my local extensions already support parts of that, and I'd be happy to implement the rest as well). May I ask what is used in the backend part to maintain module repositories, so I might have a look, @DerGoogler? Then I could see if the wish of @ccelik97 could still be fulfilled.

@DerGoogler
Copy link
Owner

Hey @IzzySoft,

the backend is in the Googlers-Repo/magisk repo, there is also more documented.

@IzzySoft
Copy link

Thanks! That is for generating (and submitting) modules – or for maintaining my own repo? Because I'd need the latter (i.e. something that generates the file corresponding to gmr.json, mmar.json. and mmr.json) based on what modules I define here – locally on my machine, not at Github. And it seems to be bound to Github and only working with pygithub (which was optional with MRepo). My current repo mostly works directly with the update.json files of the modules it serves (plus some local update.json files I've set up for those not providing one). Not all modules are hosted at Github. Plus, my repo runs on my own server; it's for FOSS modules, so I'd rather avoid involving a proprietary forge with my workflows 😉

So just asking if that's the "backend" I'll need (I could not tell from the README, as I saw no instructions on "setting up your own repo"). If so, I'd raise the proper questions there.

@DerGoogler
Copy link
Owner

We could use the MRepo util and add MMRLs features or you add them yourself

MMRL:

{
    "id": "mmrl_install_tools",
    "name": "MMRL Install Tools",
    "author": "Der_Googler",
    "description": "Required module if you want to install modules from Explore",
    "version": "3.2.1",
    "versionCode": 321,
    "download": "https://github.com/Googlers-Repo/mmrl_install_tools/archive/master.zip",
    "valid": true,
    "verified": true,
    "updateJson": null,
    "last_update": 1705103442000,
    "readme": "https://raw.githubusercontent.com/Googlers-Repo/mmrl_install_tools/master/README.md",
    "stars": 11,
    "about": {
        "repo_source": "Googlers Magisk Repo",
        "language": "Shell",
        "source": "https://github.com/Googlers-Repo/mmrl_install_tools.git",
        "issues": "https://github.com/Googlers-Repo/mmrl_install_tools/issues"
    },
    "mmrl": {
        "author": {
            "name": "DerGoogler",
            "avatar": "https://avatars.githubusercontent.com/u/54764558?v=4",
            "bio": "21 y/o well known Android modder and Magisk/KernelSU developer from Germany.",
            "followers": 93,
            "verified": true
        },
        "contributors": null,
        "cover": "https://mmrl.dergoogler.com/assets/MMRL-Cover.png",
        "logo": "https://github.com/DerGoogler/MMRL/blob/master/Android/app/src/main/ic_launcher-playstore.png?raw=true",
        "screenshots": [
            "https://github.com/Googlers-Repo/googlers-repo.github.io/assets/54764558/f5b7d396-781e-463a-b4ed-dc345cc15ba3I",
            "https://github.com/Googlers-Repo/googlers-repo.github.io/assets/54764558/0a03c54a-3064-4ed0-a69b-90db437bd9f0",
            "https://github.com/Googlers-Repo/googlers-repo.github.io/assets/54764558/8fbc9621-fe85-4b66-8070-271599f87d38"
        ],
        "categories": [
            "Tools",
            "System",
            "Configurable"
        ],
        "require": null,
        "developerNote": {
            "severity": "info",
            "note": "First installation? Then please install GitHub release first."
        },
        "supportedRoots": null,
        "minKernelSU": null
    },
    "fox": {
        "minApi": 26,
        "maxApi": null,
        "minMagisk": null,
        "needRamdisk": null,
        "support": null,
        "donate": null,
        "config": null,
        "changeBoot": null,
        "mmtReborn": null
    }
}

MRepo:

 {
      "id": "73sydney.coloursatmod",
      "name": "Colour And Saturation Modifier",
      "version": "1.1",
      "versionCode": 1,
      "author": "adrianmmiller (73Sydney)",
      "description": "A Colour and Saturation Modifier Module - Default Settings for Pixel 6 Pro as per Justarandomguy's post at: https://forum.xda-developers.com/t/root-tune-saturation-white-balance-and-enable-hbm-on-your-pixel.4575403/",
      "track": {
        "type": "ONLINE_JSON",
        "added": 1703840636.160768,
        "license": "GPL-2.0-or-later",
        "homepage": "",
        "source": "https://gitlab.com/adrian.m.miller/coloursatmodifier",
        "support": "https://gitlab.com/adrian.m.miller/coloursatmodifier/-/issues",
        "donate": ""
      },
      "versions": [
        {
          "timestamp": 1703786679.0,
          "version": "1.1",
          "versionCode": 1,
          "zipUrl": "https://apt.izzysoft.de/magisk/modules/73sydney.coloursatmod/1.1_1.zip",
          "changelog": "https://apt.izzysoft.de/magisk/modules/73sydney.coloursatmod/1.1_1.md"
        }
      ]
    },

@DerGoogler
Copy link
Owner

When you try to add https://apt.izzysoft.de/magisk/json/modules.json
image

@IzzySoft
Copy link

We could use the MRepo util and add MMRLs features or you add them yourself

Hm, yes, that could be done. Part of that is already in place, I have an "enriched index" as well (which is used by my website), just pick index.json instead of modules.json – but that has too much other stuff in which might cause confusion on your end. I could probably create an mmrl.json according to your specs. Nasty thing would just be that Sanmer probably stopped working on repo-util as well, and it currently has one nasty bug preventing me from running the index builds automatically (see the corresponding issue). It would probably be asked too much from you to check if you can see the culprit (or even maintain a fork of that util should Sanmer really have dropped-out); my Python knowledge has too much dusted, so I could not figure it myself (nor could I maintain a fork).

ERR_FAILED 200 OK

Funny error if it's OK. Well, the site (or its parts) should not be "inlined" in other places. What would you suggest I should configure so the index files could be used by MMRL? I could probably declare Access-Control-Allow-Origin: * just for the json directory, I'd just need to figure out how (Apache web server here – probably a <directory> entry with Header add Access-Control-Allow-Origin "*" should do; just added that, and reloaded Apache, can you please check?).

@DerGoogler
Copy link
Owner

I've forked magisk-modules-repo-util and added already specs. There will no need to create mmrl.json. Categories, screenshots, etc will added from the tracks.json.

@IzzySoft

@DerGoogler DerGoogler removed the wontfix This will not be worked on label Jan 14, 2024
@DerGoogler DerGoogler reopened this Jan 14, 2024
@DerGoogler DerGoogler linked a pull request Jan 14, 2024 that will close this issue
@IzzySoft
Copy link

I didn't dare hoping for that – thanks a thousand times! 😍 Let me know when it's ready to fetch, so I'll see that I switch over to your fork. I guess it will provide the JSON for both (MRepo and MMRL) then (so those still using MRepo are still covered)? 🤩

@DerGoogler
Copy link
Owner

DerGoogler commented Jan 14, 2024

I didn't dare hoping for that – thanks a thousand times! 😍 Let me know when it's ready to fetch, so I'll see that I switch over to your fork. I guess it will provide the JSON for both (MRepo and MMRL) then (so those still using MRepo are still covered)? 🤩

Early state fork.. some variables had "" and I have changed them to None. Now guess what: bad idea cuz you can't add it in MRepo, so I'll have to revert that.
Edit: fixed

It can be used in both apps. The support for FoxMMM (AMM) has been discontinued. Those modules aren't supposed yet to earn money from it, what's the point of AMM ist.

@IzzySoft
Copy link

The support for FoxMMM (AMM) has been discontinued. Those modules aren't supposed yet to earn money from it, what's the point of AMM ist.

Full ack. I've dropped FoxMMM once Androidacy had taken over (they added adds and other stuff; also it was often unclear whether modules were FOSS or not). That was one reason why I searched for alternatives, found MRepo, and started my own MagiskModulesRepo. Not for them to exploit, but for the FOSS folks to use. If a module contains something "questionable", I define AntiFeatures the way you know them from F-Droid. But other than that, I only accept modules which are FOSS and have a FOSS license declared. Just yesterday, the number of modules available reached 100 😃

Early state fork.

I'll wait for your signal telling me "ready for use" before I switch over. Also need time to see whether there are any side-effects (e.g. with my framework and website). I guess it won't be a "quick switch", but will be happy if it is 😉

@DerGoogler
Copy link
Owner

I think the fork has been finished... magisk-modules-repo-util, please make a test run to see if it runs without problems.

Antifeatures, categories, etc can be configured in the track.json. More in the README file.

@IzzySoft

@DerGoogler DerGoogler added android This label targets specifically MMRL on Android devices browser This label targets specifically MMRL on Browsers labels Jan 20, 2024
@IzzySoft
Copy link

Ouch, how did I not get that notification? Just found it now when replying to a mail from Sanmer (who wrote to pick up again in March on MRepo). I've answered that mentioning your fork and that you probably would be happy to upstream your changes.

Thanks a lot! I'll make myself a note to check this ASAP (at the moment, my desk is flooded with tasks so I cannot address this immediately – my apologies for that!)

@IzzySoft
Copy link

PS: Sanmer plans to rewrite repo-util in Rust. I've asked them to accept your changes and take them along. So just in case (their further development might change definitions for MRepo, and the two would drift apart): I see you're also using Rust for MMRL-CLI. Would you go along with that as well? Sanmer probably wants to focus on MRepo structures (and from my past experience isn't too eager to implement things they do not want there). If they accept your upstreaming your specifics, I think that would help keeping the two in sync.

No demands here, just trying to be prepared and knowing the options 😉

@DerGoogler DerGoogler unpinned this issue May 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
android This label targets specifically MMRL on Android devices browser This label targets specifically MMRL on Browsers enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants