Jump to content

mjd79

Member
  • Posts

    193
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    Poland

Everything posted by mjd79

  1. I see that there is a need for a more detailed explanation. You need: Vista SP2 x64 (you may need to upgrade it to 2017 EOL) kernel33.dll from Vista extended kernel v2023-03-09. p_advp32, p_ole, pwp_shl, p_user from Supermium 132 R4. (for convenience you can name them advapi33, ole33, shell33, user33 etc) In the chrome.exe file, change kernel32.dll to kernel33.dll in the import table using CFF Explorer In the chrome.dll file, change the same import. Then open this file in HxD and search for advapi32, ole32, shell32, user32 - they may be in several places, change the ones that are full import table looking like below: In the chrome_elf.dll file, as you rightly pointed out, change NtOpenKeyEx to the NtOpenKey version.
  2. I used kernel33 from extended kernel and advapi32, ole32, shell32, user32 wrappers from Supermium 132. As you can see, for example, ublock works. I didn't need a platform upgrade or an extended kernel installation for this
  3. The first builds of Chromium 140 are available. As expected, flags have been removed and the policies entry in the registry no longer works. But after adding --enable-features=AllowLegacyMV2Extensions --disable-features=ExtensionManifestV2DeprecationWarning,ExtensionManifestV2Disabled,ExtensionManifestV2Unsupported to the MV2 shortcut it still works. We will see for how long, as these are very early compilations. That is Chromium for Windows 7 by e3kskoy7wqk*
  4. Many people use a different system than they have in their profile, or have several computers with different systems.... So reboot12 was right to ask the question.
  5. I described a few posts above what to do. In addition to changing the minimum version in the PE header of firefox.exe, you should swap a few imports in xul.dll and mozglue.dll, and you will be able to run the latest version.
  6. Wrapper of bcryptprimitives (e.g., p_cryptp from Supermium) and kernel32 (e.g., pwrp_k32 also from Supermium). And you can mod this yourself.
  7. https://github.com/ToprakBZK/Modern-Chrome-134-For-Windows-7-and-8.1/releases Be warned, should anyone come across it, it's Blaukovitch's crack LOL My goal for more than a year was to become independent of his solutions when creating my own mods, but unlike that kid, I succeeded....
  8. Sandbox working
  9. I already know what is messing up Chromium 127+ It is the kernel32.dll and kernelbase.dll version checking. I rewrote it to return a false value for them indicating Win 10, and here is the result: The latest versions also use IsWindowArranged from user32, which is absent in 8.1 - possible to be replaced by, for example, IsWindowVisible. Now it remains for me to write my own version of UpdateProcThreadAttribute.
  10. Unfortunately, it is not known where it sits, but any attempts to neutralize it have failed. For what it's worth, it's interesting to note that the browser works after replacing it with TraceSetInformation. STATUS_BREAKPOINT without this feature starts at version 133.0.6876.1 from e3kskoy7wqk. I did a thorough search of the entire repository downloaded locally (including all 3rd party components) in 133.0.6876.1 and 6861.0, the use of this function in the code files has not changed at all. My suspicions fall on the dxc generated by mcgen during compilation, but I have no idea what to do about it next. I am currently working on moving patches to version 120.0.6099.338 - one of the longer supported LTS versions. And one thing puzzles me - how the author moved the original commits from 2023 removing support for Win 7 (only that reversed, for that I already have a script) for all of his versions. All the diffs/commits after merging into one file are more than 35 thousand lines of code, and there are about 100 of them. And for most of the files, lines have changed in the meantime, where some code needs to be removed or added, in the case of some, for example, 50 lines. Did he correct it manually? I find it hard to believe... more than 650 files are being changed. I tried manually correcting the hunk, but quickly gave up. I even tried to create scripts that search for given passages in the original files and, based on that, determine new lines to put in the hunki, but that too succeeded for a small number of files.
  11. That is, the breaking of the engine or V8 by author continues. The question is for what reason? The author doesn't have to do anything with it to maintain legacy OS compatibility.
  12. https://github.com/win32ss/supermium/issues/1367 I don't have a github account, so if someone could pass on. Win32ss needs a bcryptprimitives function, specifically ProcessPrng. Supermium doesn't have VMP anyway, so the author can change the import to his own implementation of bcryptprimitives in the patcher anyway. GetProcessMitigationPolicy and SetThreadInformation are also needed, but from what I've seen the author of Supermium certainly knows. Oh, right, I forgot. On Supermium 132, including R3 widevine does not work at all, even on Windows 10, and even more so with the repaired widevine under 7, or with original widevine with VXkex. The world does not end with Netflix, there are many sites that use DRM, for which unnecessary for the author to buy VMP license for Supermium. Works in 126 R7:
  13. Unfortunately, versions 2830.0 and 2380.100 have recently stopped working. For now, my temporary workaround for 4.10.2891.0 on Win 7 is to use pwrp_k32 from Supermium instead of kernel32, an p_cryptp instead of bcryptprimitives. There are actually a few functions missing, so perhaps I will write my wrapper and make it available to the public. That's basically what Mozilla does. https://hg-edge.mozilla.org/releases/mozilla-esr115/log?rev=widevine You can find bcryptprimitives in the widevinecdm.dll file by searching 62 00 63 00 72 00 79 00 70 00 74 00 70 00 72 00 69 00 6D 00 69 00 74 00 69 00 76 00 65 00 73 in hex editor (two occurrences), replace, for example, 62 at the beginning with 78, and name the p_cryptp.dll file xcryptprimitives.dll.
  14. Indeed, the sandbox is fixed. #supermium-tab-options works fairly decently, although v109 mode has minimal bugs (at least on 7 SP1 with Aero).
  15. Temporary deleted 02.05.2025: I'm revisiting this topic back, now I 99% know what I need to do to get it running on Windows 7 SP0. EventSetInformation seems to be able to be overridden by TraceSetInformation to the extent of making the browser work, hence I will have to make it so that EventSetInformation is loaded dynamically, and TraceSetInformation is used if it fails. I probably also already know how to use YY-Thunks, which will allow us to run this on Vista.
  16. No, any pure Chromium lacks API keys and OAuth2, I remind you that I only applied e3kskoy7wqk patches to the completely original Chromium. I have not tried this flag, I will check it under Win7, on which, of course, my rebuilts work. I will now look for the cause of the crash on 7 SP0. BTW I tried to restore at least partially the old look, unfortunately Chromium 135 has the old code completely removed. The only thing I can do is to restore the default color scheme of the omnibox, reduce the height of the elements on it, restore the old icons. In the "3 dots" settings menu I will try to change the font to non-bold, remove the icons and reduce it to the size it was before CR23. I was also able to restore the flag that disables Chrome Labs.
  17. Unfortunately, Chrome Sync still does not work after adding Google API keys, you still need OAuth2 keys. As a not being a Chromium developer, you can only use the default keys, which can be added with the --oauth2-client-id and --oauth2-client-secret flags. There is a simple solution for this, so that you won't have to add flag it to shortcuts or in the registry (in case you set it as default browser) void ChromeMainDelegate::PreSandboxStartup() { base::CommandLine& command_line = *base::CommandLine::ForCurrentProcess(); std::string process_type = command_line.GetSwitchValueASCII(switches::kProcessType); if (!command_line->HasSwitch("oauth2-client-id")) { command_line->AppendSwitchASCII("oauth2-client-id", "77185425430.apps.googleusercontent.com"); } if (!command_line->HasSwitch("oauth2-client-secret")) { command_line->AppendSwitchASCII("oauth2-client-secret", "OTJgUOQcT7lO7GsGZq2G4IlT"); } With this code, replace the PreSandboxStartup() function in the chrome_main_delegate.cc file. Edit: in testing/variations/fieldtrial_testing_config.json there are flags about TabStripComboButton and disabling MV2 support. They override the default values declared in the corresponding files, hence you need to remove them from this json.
  18. The patcher included by e3kskoy7wqk, along with the diff files for each compilation (a total of 5 apply_patches.bat files), require a bit more correction than the author claims. At “REPO_PATH=E:\win7dep\chromium\src” change the path to yours, of course, but besides that, you also need to replace “!REPO_PATH!” with “%REPO_PATH%” in two places. In addition, it is required to add clang_use_chrome_plugins = false to args.gn.
  19. For now i5 6500, I just had a Ryzen 1700 lying around for a long time, I bought a MSI B450 motherboard for it yesterday. On the i5 compilation takes 15-20 hours, depending on the number of objects. On your processor it will be at least about 36 hours. 16GB of RAM is also the absolute minimum. And no, unfortunately it can't be done on 8.1. Edit: 8 hours on Ryzen 1700, the rest of the hardware configuration except the motherboard the same. On the i5 6500 as I wrote earlier 15 hours. However, 32GB RAM is not necessary for me for now
  20. I, for one, instead of having pointless arguments on the forums, came to how to avoid compilation errors that appear (which may not be there in your case, from what I learned on the Chromium forums, the problem can occur randomly depending on a great many factors) For start, autoninja -C out/chromium135r72 ..\..\chrome\windows_services\elevated_tracing_service\elevated_tracing_service.cc^^ When the error occurs, you will see the name of the directory in the system %TEMP%, e.g. tmpxxlxwh5i, and the destination path where you should paste the files contained in it. Then autoninja -C out\chromium135r72 ..\..\chrome\updater\app\app_server_win.cc^^ and repeat the previous step, except that now the directories in the temp folder will be three. This way I will be able to compile uninterrupted while I am sleeping or not at home. Edit: I forgot, after copying the files you need to run the command again to complete the compilation of the module. “chromium135r72” should be replaced with the name which you selected in the gn args out command
  21. This is my personal lowest priority, but from what I've gathered, it won't be difficult.
  22. I don't know, maybe I'm just stupid, but the compiler kept telling me what to do with them. There were two errors, regarding elevation service and updater legacy. In both cases, the compiler components created corrected files in temporary files, which had to be copied to src\third_party\win_build_output.... I was doing this correctly all the time with elevation service, but for some reason not with updater legacy, which I copied to out\Default\gen\... ninja has the ability to compile individual objects, it seems that I will have to compile those problematic elements first and paste the fix generated by it even before I start compiling the whole. I'm currently finishing compiling already I can't even remember which version (it's been compiling since 3 pm on Sunday, and it's 8 am on Monday) I have 2000 objects left, which will take maybe half an hour. I purchased slightly better hardware (Ryzen 7 1700, 32GB of DDR4 RAM) to make the compilation time significantly shorter, should be at my place tomorrow. Edit: YES!!!!!! I GOT IT! However, this is built with the parameters is_debug = true and is_component_build = true, because the number of objects was only 53,000 instead of 87,000. I will build the version with the parameter is_official_build = true after I assemble and configure the new computer.
  23. This man compiles almost pure Chromium. He only adds basic codecs and ffmpeg. You can always compile yourself, but as you can see, despite the seemingly trivial instructions, it's not so easy.
  24. I will at least write a compilation tutorial in Windows and for Windows What you need: - Windows 10/11 (before 10 20H1 additional steps with SDK required) - Visual Studio 2022 (can be free Community), git and Python (minimum 3.9.0) Run the Visual Studio installer from CMD with the following arguments. PATH_TO_INSTALLER\VisualStudioSetup.exe --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.VC.ATLMFC --includeRecommended. Then install the Windows 11 SDK in the latest available version. Install git and python. In Git Bash, configure: git config --global user.name "My Name" (optional) git config --global user.email "my-name@chromium.org" (optional) git config --global core.autocrlf false git config --global core.filemode false git config --global core.preloadindex true git config --global core.fscache true git config --global branch.autosetuprebase always git config --global core.longpaths true Now we will take care of downloading depot_tools. In my example, you first need to create a src folder in C:/. Then in the CMD: cd C:\src git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git Next add the environment variables: DEPOT_TOOLS_WIN_TOOLCHAIN=0 vs2022_install=C:\Program Files\Microsoft Visual Studio\Community (or other edition) NINJA_SUMMARIZE_BUILD=1 Edit the "Path" variable with path to depot_tools (eg. C:\src\depot_tools) and move it up before any Python installation. Next simply run the gclient command in CMD, it will download the basic components needed. In the folder where depot_tools is located, create a directory, for example, named chromium. Go to it in the console and run the command "gclient sync" if you want to download the latest version, or gclient sync --revision src@xxx.x.xxxx.xx (the version number you need). Use --no-history parameter at the end of command, downloading entire history, including branches and tags is about 50GB, I think it's not worth it. Now we are ready to compile. Go to the src folder inside the folder we named chromium earlier in the CMD, and run gn args out/default (you can name it whatever you want). This will open your default notepad, where you can set all the arguments. If compiling under Windows, I recommend using at least the following: is_official_build = true is_component_build = false is_debug = false target_os = "win" target_cpu = "" (x64, x86) clang_use_chrome_plugins = false (if compiling build with e3kskoy7wqk patches only) symbol_level = 0 v8_symbol_level = 0 blink_symbol_level = 0 proprietary_codecs = true ffmpeg_branding = "Chrome" chrome_pgo_phase = 0 You can also add arguments about Google API keys or widevine google_api_key = " " google_default_client_id = " " google_default_client_secret = " " enable_widevine = true ignore_missing_widevine_signing_cert = true enable_media_drm_storage = true Save the args.gn file and close notepad, gn will generate the necessary files. Now just use the autoninja -C out/Default (you can also add the parameter "-j X", where X is the number of clang compiler processes)
  25. After 10 hours of compilation, I received errors. Then I would face another 10 hours, and in the meantime more errors would appear. Not for my patience, I pity the money for more powerful hardware, as long as I can't compile without errors, and I'm not able to do that at the moment at this compilation rate. I apologize to the users I disappointed, apparently I'm not smart enough after all and despite following the instructions I keep doing something wrong all the time
×
×
  • Create New...