Skip to content

Commit

Permalink
added rooting/devmode/develop pages
Browse files Browse the repository at this point in the history
  • Loading branch information
mariotaku committed Jun 13, 2024
1 parent a0c8e9f commit fad8300
Show file tree
Hide file tree
Showing 12 changed files with 302 additions and 106 deletions.
23 changes: 0 additions & 23 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,6 @@
"handlebars": "^4.7.8",
"html-bundler-webpack-plugin": "^3.13.0",
"html-loader": "^5.0.0",
"marked": "^13.0.0",
"marked-alert": "^2.0.1",
"postcss-loader": "^8.1.1",
"sass": "^1.76.0",
"sass-loader": "^14.2.1",
Expand Down
68 changes: 22 additions & 46 deletions src/pages/rooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,45 +4,23 @@

Before rooting your TV, please think about what you would like to do with a rooted TV.

| Use Case | Root Required |
|-------------------------------------------------|---------------|
| Using Kodi | No |
| Stream PC games with Moonlight | No |
| Amblight setup | Yes |
| Remapping remote control buttons | Yes |
| Keeping Kodi's `.kodi` directory on a USB drive | Yes |
| Use Case | Root Required | Dev Mode |
|--------------------------------------------------------------------------------|---------------|----------|
| Use apps like Kodi, Moonlight, etc. | | |
| No need for renewing developer mode per 1000 hours | | |
| Amblight setup with [PicCap][PicCap]/[Hyperion][Hyperion]/[HyperHDR][HyperHDR] | | |
| Change screensaver, wallpaper, etc. | | |
| Remapping remote control buttons | | |

Use Kodi? That doesn't require root.

Stream PC games with Moonlight? That doesn't require root either.

For many uses, like installing some useful homebrew applications, root is **NOT** required.
Using developer mode is enough most of the time and not hard to set up either.
It requires an account though, and you'll have to renew the developer mode every
1000 hours.

However, an Amblight setup with
[PicCap](https://github.com/TBSniller/piccap)/[Hyperion](https://github.com/webosbrew/hyperion-webos)/[HyperHDR](https://github.com/webosbrew/hyperhdr-webos-loader)
*will* require root.

Remapping remote control buttons with [lginputhook](https://github.com/Simon34545/lginputhook) requires root.

Keeping Kodi's `.kodi` directory on a USB drive also requires root.

> [!NOTE]
> Highlights information that users should take into account, even when skimming.
> [!TIP]
> Optional information to help a user be more successful.
## Can I root my TV?

> [!IMPORTANT]
> Crucial information necessary for users to succeed.
> [!WARNING]
> Critical content demanding immediate user attention due to potential risks.
> Root exploits are constantly being patched. This table may not be up-to-date.
> [!CAUTION]
> Negative potential consequences of an action.
| webOS version | RootMy.TV | crashd | WTA | DEBUG via NVM | GetMeNow (GetMeIn) | DejaVuln |
|---------------|----------------|----------------|----------------|---------------|--------------------|----------|
| 1.0 - 2.0 | Not compatible | Not compatible | Not compatible | Works |||
| 3.0 - 3.4 | Not compatible | Not compatible | Not compatible | ^ |||

### Benefits of Rooting

Expand All @@ -59,23 +37,21 @@ Keeping Kodi's `.kodi` directory on a USB drive also requires root.
* Rooting is safe, but reckless changes are not - You could brick your TV if you don't have proper knowledge and ignore
**[warnings](https://rootmy.tv/warning)**

## How Do I Use Homebrew Apps Without Root?

Using [dev-manager-desktop](https://github.com/webosbrew/dev-manager-desktop) makes this pretty easy.

<img src="https://user-images.githubusercontent.com/830358/215523117-0fdbde24-a503-4eed-8e2f-50a3486ce7f7.png" alt="Install from webOS Homebrew repo" title="Install from webOS Homebrew repo" width="70%">

## I Want Root Anyway!

As of February 2024, LG has released multiple patches for the vulnerabilities we found.
Depending on the firmware and model, there are multiple approaches to rooting a webOS TV.

- [DejaVuln](https://github.com/throwaway96/dejavuln-autoroot) - For webOS 3.5 and up
- [RootMy.TV](https://rootmy.tv/) - For webOS 3.4 and up, but very likely patched (read
the [README](https://github.com/RootMyTV/RootMyTV.github.io?tab=readme-ov-file#readme) first!)
- [crashd](https://gist.github.com/throwaway96/e811b0f7cc2a705a5a476a8dfa45e09f) - For webOS 4.0 and up; patches being
rolled out
- [crashd](https://gist.github.com/throwaway96/e811b0f7cc2a705a5a476a8dfa45e09f) - For webOS 4.0 and up; patched
- [WTA](https://gist.github.com/throwaway96/b171240ef59d7f5fd6fb48fc6dfd2941) - For webOS 5 and up; patches being rolled
out
- [DEBUG via NVM](https://gist.github.com/throwaway96/827ff726981cc2cbc46a22a2ad7337a1) - Works on all webOS versions
prior to 4.0 (plus NetCast/GP) but requires opening up the TV (no permanent hardware modifications)
- GetMeIn - May work on webOS up to 3.4 on certain models, but don't use the original binary from the XDA thread
- GetMeIn - May work on webOS up to 3.4 on certain models, but don't use the original binary from the XDA thread

[PicCap]: https://github.com/TBSniller/piccap

[Hyperion]:https://github.com/webosbrew/hyperion-webos

[HyperHDR]:https://github.com/webosbrew/hyperhdr-webos-loader
68 changes: 67 additions & 1 deletion src/scss/styles.scss
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
// Include functions first
@import "bootstrap/scss/functions";
@import "bootstrap/scss/variables";
@import "bootstrap/scss/variables-dark";
@import "bootstrap/scss/maps";
@import "bootstrap/scss/mixins";
@import "bootstrap/scss/utilities";

// Customize some defaults
$primary: #cf0652;
Expand All @@ -8,4 +13,65 @@ $primary: #cf0652;
@import "bootstrap";

$bootstrap-icons-font-dir: "~bootstrap-icons/font/fonts";
@import "~bootstrap-icons/font/bootstrap-icons.scss";
@import "~bootstrap-icons/font/bootstrap-icons.scss";

html {
scroll-padding-top: 65px;
}

.alert.alert-primary {
--bs-primary-text-emphasis: #{$blue-300};
--bs-primary-bg-subtle: #{$blue-900};
--bs-primary-border-subtle: #{$blue-700};
@extend .alert-primary;
}

@include color-mode(light) {
.alert.alert-primary {
--bs-primary-text-emphasis: #{$blue-900};
--bs-primary-bg-subtle: #{$blue-100};
--bs-primary-border-subtle: #{$blue-200};
@extend .alert-primary;
}
}

.callout {
@extend .px-3;
@extend .overflow-hidden;

@extend .border;
@extend .border-4;
@extend .border-top-0;
@extend .border-bottom-0;
@extend .border-end-0;

&.callout-danger {
@extend .border-danger;

.callout-title {
@extend .text-danger;
}
}

&.callout-warning {
@extend .border-warning;

.callout-title {
@extend .text-warning;
}
}

&.callout-important {
border-color: $purple-400 !important;

.callout-title {
color: $purple-400 !important;
}
}

}

.callout-title {
@extend .mt-2;
@extend .fw-bold;
}
7 changes: 7 additions & 0 deletions src/views/develop.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{{#*inline "content"}}
<h1>Development</h1>
<p>
Under construction.
</p>
{{/inline}}
{{> page title="Development" }}
8 changes: 8 additions & 0 deletions src/views/devmode.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{{#*inline "content"}}
<h1>Dev Mode</h1>
<p class="lead">
Use officially supported development mode to install homebrew apps and games.
</p>
{{> rooted-vs-devmode }}
{{/inline}}
{{> page title="Dev Mode" }}
4 changes: 0 additions & 4 deletions src/views/index/index.scss
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
@import "../../scss/styles";
@import "bootstrap/scss/variables";

html {
scroll-padding-top: 65px;
}


.tv-container {
position: relative;
Expand Down
4 changes: 2 additions & 2 deletions src/views/partials/footer.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
<div class="col-6 col-md">
<h5>Guides</h5>
<ul class="list-unstyled text-small">
<li><a class="link-secondary text-decoration-none" href="/rooting">Root your TV</a></li>
<li><a class="link-secondary text-decoration-none" href="/devmode">Developer Mode</a></li>
<li><a class="link-secondary text-decoration-none" href="/rooting">Rooting</a></li>
<li><a class="link-secondary text-decoration-none" href="/devmode">Dev Mode</a></li>
</ul>
</div>
<div class="col-6 col-md">
Expand Down
7 changes: 5 additions & 2 deletions src/views/page/page.hbs → src/views/partials/page.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,19 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{title}} | webOS Homebrew</title>
<link href="../../scss/styles.scss" rel="stylesheet">
<link href="@styles/styles.scss" rel="stylesheet">
<link href="@img/hbchannel-color.svg" type="image/svg" rel="icon">
</head>
<body data-bs-theme="dark">
{{> navbar }}
<main class="bg-dark-subtle">
<div class="container py-4">
{{markdown (include page)}}
{{> content}}
</div>
</main>
{{> footer }}
</body>
{{#script}}
<script src="{{this}}"></script>
{{/script}}
</html>
47 changes: 47 additions & 0 deletions src/views/partials/rooted-vs-devmode.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
<h2>Rooted vs Dev Mode</h2>
<hr>
<div class="table-responsive">
<table class="table table-hover">
<thead>
<tr>
<th>Use Case</th>
<th class="text-center">Rooted</th>
<th class="text-center">Dev Mode</th>
</tr>
</thead>
<tbody>
<tr>
<th>Use apps like Kodi, Moonlight, etc.</th>
<td></td>
<td></td>
</tr>
<tr>
<th>Manage apps with <a href="https://github.com/webosbrew/dev-manager-desktop">Dev Manager</a></th>
<td></td>
<td></td>
</tr>
<tr>
<th>No need for renewing developer mode per 1000 hours</th>
<td></td>
<td></td>
</tr>
<tr>
<th>Ambient light setup with <a href="https://github.com/TBSniller/piccap">PicCap</a>/<a
href="https://github.com/webosbrew/hyperion-webos">Hyperion</a>/<a
href="https://github.com/webosbrew/hyperhdr-webos-loader">HyperHDR</a></th>
<td></td>
<td></td>
</tr>
<tr>
<th>Change screensaver, wallpaper, etc.</th>
<td></td>
<td></td>
</tr>
<tr>
<th>Remapping remote control buttons</th>
<td></td>
<td></td>
</tr>
</tbody>
</table>
</div>
Loading

0 comments on commit fad8300

Please sign in to comment.