Skip to content

Instantly share code, notes, and snippets.

X96 mini 1GB/8GB

"X96 Mini Android 7.1.2 Smart TV Box 1GB+8GB S905W Quad Core WIFI HD Media Player", seller: supermall

LibreELEC

#!/bin/bash
# This script converts the Firefox .tar.bz2 into a Firefox AppImage
# NOTE: This is for demonstration only. For a real production AppImage, one would add
# * update information (for binary delta updates)
# * embedded digital signature (to validate authorship)
# * possibly additional dependencies (if needed)
# * additional metadata to help desktop integration
# Download and extract Firefox .tar.bz2

Polycom SoundStation IP 6000

The phone has a TM3260 processor (Philips Nexperia PNX1500 Media Processor SoC) (250 MHz, 130 nm) from 2002.

Factory reset

Entirely resetting the device is surprisingly complicated and requires an FTP server.

AppImage in Golang

Wondering whether it would be a good idea to re-implement AppImage tools in Golang.

Advantages:

  • Maintainable, easy code (unlike "modern C++")
  • Short compilation times
  • Statically linked binaries, no dependencies
  • Synergies with snap?
  • Fun?
@probonopd
probonopd / raspberry_pi_keyboard.md
Last active November 12, 2023 00:52
Automatic USB keyboard language detection

Automatic USB keyboard language detection

https://www.youtube.com/watch?v=_pWRVR1Knfo around 43:50 shows that the Apple Lisa could set the system language automatically depending on which language keyboard was attaced. In 1983!

The official Raspberry Pi keyboard can automatically tell the operating system the language, something all keyboards should have done since the introduction of USB.

Kudos to the genius at the Raspberry Pi Foundation who made this happen, finally. I only wish I could plug this keyboard into any computer system and have it just work.

How is it working, actually? Does anybody know?

@probonopd
probonopd / Ender-2.ini
Last active May 2, 2020 07:59
Outdated; there is now an Ender-2 profile built into PrusaSlicer https://github.com/prusa3d/PrusaSlicer/commit/b9c397ccb91cdbec1035e7f10895fe1d68f3546b
# generated by PrusaSlicer 2.1.0-alpha1+linux64 on 2019-08-11 at 17:37:33
bed_custom_model =
bed_custom_texture =
bed_shape = 0x0,160x0,160x160,0x160
before_layer_gcode =
between_objects_gcode =
cooling_tube_length = 5
cooling_tube_retraction = 91.5
default_filament_profile = ""
default_print_profile =

Making a deb, the no-nonsense way

Let's say we want to package /usr/bin/foo and /usr/bin/bar.

Easy:

sudo apt-get -y install equivs

touch foo bar
@probonopd
probonopd / satisfying-twister.scad
Created June 10, 2019 10:34
Parametrized for holding Euro coins. Need to rotate along Y axis
// Customizable twister
// Copyright (C) 2017 Lars Christensen
// Idea from Make Anything
// Which one would you like to see?
part = "outer"; // [inner:Inner twister,outer:Outer twister,both:Both twisters,assembled:Assembled]
// Height of twisting part (mm)
height = 40; // [5:600]
@probonopd
probonopd / squash_gh_pr.md
Last active January 6, 2019 11:37
Squash GitHub pull requests as the sender

Combine existing GitHub pull requests into one commit

By the "receiver" of the pull request

If you would like to see only one entry for the Pull Request in your project's history, then please enable this GitHub functionality on your repo. It allows you to squash (combine) the commits when merging.

By the "sender" of the pull request

Unfortunately, the "sender" of the pull request does not have a button in the GitHub GUI to squash the commits in an existing pull request. Instead, they need to to it by hand using the command line, which is unfortunately cumbersome but can be done like this: