RÚV apps for Samsung TV
August 6, 2026 · View on GitHub
Unsigned Tizen packages for these Samsung TV apps, published so you can sign them with your own Samsung developer certificate and install them on your own TV.
These apps are built for the public services of RÚV, the Icelandic national broadcaster. They are independently developed and are not affiliated with, endorsed by, or published by RÚV.
| App | Asset | What it is |
|---|---|---|
| Sarpur | RUVVod.wgt | The main RÚV catalogue |
| Barnaefni | RUVKids.wgt | Children's programming |
| UngRÚV | RUVUng.wgt | Teen programming |
| MenntaRÚV | RUVMennta.wgt | Educational programming |
| Útvarp | RUVUtvarp.wgt | Radio, live and on demand |
Download them from Releases.
Why these are unsigned
A Samsung distributor certificate names the exact televisions it may install on, by device id (DUID). A package signed by us could only ever install on our TVs. So we ship the packages unsigned and you sign them, which binds them to your sets.
This is not a workaround. It is the only arrangement that can work, and it means no signing key of ours ever needs to exist in a build server.
Before you start
Your TV needs developer mode, and there is no way to enable it remotely. Do this on each TV:
- Open the Apps screen.
- Press 1 2 3 4 5 on the remote. A dialog appears.
- Set Developer mode to On.
- Enter the IP address of the computer you will install from.
- Restart the TV.
Two things people get wrong here:
- The IP is your computer's, not the TV's.
- If your computer's IP later changes (most home routers hand out addresses by DHCP), installation stops working until you come back and update this field.
You will also need your TV's IP address: Settings > General > Network > Network Status > IP Settings.
Path A: Apps2Samsung (recommended)
Apps2Samsung is a free, open-source, cross-platform installer that handles TV discovery, certificate creation, signing and installation for you. It runs on Windows, macOS, Linux and Android.
- Download and run Apps2Samsung.
- Let it find your TV, or enter the IP.
- Choose custom
.wgtand select the app you downloaded from our Releases page. - Install.
It will ask you to sign in to a Samsung account the first time, because Samsung issues the certificate and there is no way around that.
Path B: Tizen CLI by hand
Use this if you prefer the command line, are scripting a fleet, or Apps2Samsung will not run on your machine. It is more work but nothing here is mysterious.
1. Install the Tizen SDK CLI
You do not need the full Tizen Studio IDE. The CLI-only installer is a few hundred MB:
| OS | Installer |
|---|---|
| Windows | web-cli_Tizen_SDK_10.0_windows-64.exe |
| Linux | web-cli_Tizen_SDK_10.0_ubuntu-64.bin |
| macOS | web-cli_Tizen_SDK_10.0_macos-64.bin |
These are x86_64 only. On Apple Silicon it runs under Rosetta.
Unattended install:
chmod +x web-cli_Tizen_SDK_10.0_ubuntu-64.bin
./web-cli_Tizen_SDK_10.0_ubuntu-64.bin --accept-license --no-java-check ~/tizen-studio
Then add ~/tizen-studio/tools and ~/tizen-studio/tools/ide/bin to your PATH.
You do not need to install Java. Tizen Studio has bundled its own JDK since 3.7, and the CLI finds it
without JAVA_HOME being set. If a tutorial tells you to install a JDK, ignore it.
Check it worked:
tizen version
2. Install the Samsung Certificate Extension
package-manager-cli install --accept-license --no-java-check "Samsung Certificate Extension"
It is a default extension source, so nothing needs configuring first. Run
package-manager-cli show-pkgs if you want to see the exact package names available to you.
3. Connect every TV first
This step is not optional and the reason is not obvious. Connect all of your TVs before creating the certificate, because the certificate creation screen fills in the device list from whatever is connected. A TV that is switched off now will be missing from the certificate, and adding it later means issuing a whole new certificate.
sdb connect 192.168.1.7:26101
sdb devices
sdb devices should list each TV with a name like QE55LS03AAUXXC. If it does not, see Troubleshooting.
4. Create your certificate
tizen-studio/tools/certificate-manager/certificate-manager
In the wizard:
- Choose Samsung, and device type TV.
- Sign in with your Samsung account. This is unavoidable: Samsung's CA issues both certificates.
- Create an author certificate. Remember the password.
- Create a distributor certificate. The DUIDs of your connected TVs are filled in for you. Check that every TV you care about is listed.
- Finish. The profile is registered automatically.
A certificate covers roughly 10 devices and is valid for one year.
Confirm it registered:
tizen security-profiles list
5. Sign the package
mkdir -p signed
tizen package -t wgt -s <your-profile-name> -o signed -- RUVVod.wgt
Three things worth knowing, because each one has bitten people:
-otakes a directory, not a filename. If you leave-oout, the downloaded file is overwritten in place.- The signed file is named from the app's display name, so you get
Sarpur.wgt, notRUVVod.wgt. Three of the apps have accented names. tizen packageexits 0 even when it fails. Do not trust the exit code. Check the result:
unzip -l signed/*.wgt | grep -E 'author-signature.xml|signature1.xml'
Both files must be present. If they are not, the package is unsigned and will not install.
6. Permit the TV, then install
tizen security-profiles set-active -n <your-profile-name>
tizen install-permit -t <device-name>
tizen install -n "Sarpur.wgt" -t <device-name> -- signed
install-permit pushes your certificate's device profile to the TV. It reads whichever profile is
active, which is why set-active comes first. It also prints its errors without failing, so look for
Install Permitted in the output rather than trusting the exit code.
Verifying your download
Every release ships SHA256SUMS and a manifest.json:
sha256sum -c SHA256SUMS
manifest.json carries each app's id, version, size and digest, and is the file to parse if you are
scripting this.
Troubleshooting
| Symptom | Cause and fix |
|---|---|
install failed[118, -12] ... Invalid certificate chain with certificate in signature | The TV is not covered by your certificate, or you skipped install-permit. Run sdb shell 0 getduid on the TV and confirm that id is in your certificate. If it is not, reissue the certificate with the TV connected. |
sdb connect says failed, or the TV is not listed | Developer mode is off, the TV was not restarted after enabling it, or the host PC IP stored on the TV no longer matches your computer's current IP. |
| Install fails on Sarpur specifically, but works for the others | Sarpur has also been published to the Samsung store. A store-installed copy is signed with a different certificate and cannot be replaced in place. Uninstall it from the TV's Apps menu first. |
| The app installs but will not start, weeks later | Certificates last one year and TVs enforce it. Reissue and reinstall. |
| Nothing found when scanning the network | Some networks isolate wireless clients from each other. Connect the computer to the same network segment as the TV, or address the TV by IP directly. |
How releases work
Releases are named by date, YYYY.MM.DD, with a time suffix when a day has more than one. Each is built
automatically from the app source and published here. The packages are always unsigned.
Further reading
The docs/ directory contains the research behind all of this, including material that is not documented
by Samsung anywhere:
| Document | Contents |
|---|---|
| GROUND-TRUTH.md | Start here. Verified facts about the toolchain, with how each was established, and a table of corrections to earlier assumptions |
| SAMSUNG-CERT-PROTOCOL.md | How Samsung's certificate issuance actually works, recovered from the shipped tooling |
| PERMIT-TO-INSTALL.md | What "Permit to install applications" really does |
| ARCHITECTURE.md | The install pipeline and the constraints that shape it |
| CI-DESIGN.md | How these packages are built and published |
| FEASIBILITY.md | The original research. Partly superseded, see its header |
| IDEMPOTENCY.md | Why a TV that was switched off cannot simply be added later. Otherwise superseded |
Where any of these disagree with GROUND-TRUTH.md, that file wins.
Licence and affiliation
The packaging and documentation in this repository are covered by LICENSE. The applications themselves remain the property of their author, K65 Digital.
These apps are not affiliated with, endorsed by, or published by RÚV. They are an independent client for RÚV's public services. All programming, trademarks and content belong to RÚV. If you want RÚV's own apps, get them from RÚV.