-
- #iot
- #chrome-and-friends: Chrome, V8, Blink, Mojo, etc.
- Linux kernel #todo
- expdev #todo
- fuzzing #todo
This is inspired by https://fasterthanli.me/blog/2020/a-half-hour-to-learn-rust/
the command zig run my_code.zig
will compile and immediately run your Zig
program. Each of these cells contains a zig program that you can try to run
(some of them contain compile-time errors that you can comment out to play
with)
Most of this comes from https://wiki.qemu.org/Documentation/Platforms/m68k
Download the ISO image:
wget https://cdimage.debian.org/cdimage/ports/current/m68k/iso-cd/debian-10.0-m68k-NETINST-1.iso
open Core_kernel | |
open Bap_core_theory | |
open Bap.Std | |
open KB.Syntax | |
include Self() | |
let package = "bytoy" | |
type name = string [@@deriving equal,sexp] | |
type oper = Reg of int | Imm of int [@@deriving equal,sexp] |
I've been fiddling about with an idea lately, looking at how higher-kinded types can be represented in such a way that we can reason with them in Rust here and now, without having to wait a couple years for what would be a significant change to the language and compiler.
There have been multiple discussions on introducing higher-ranked polymorphism into Rust, using Haskell-style Higher-Kinded Types (HKTs) or Scala-looking Generalised Associated Types (GATs). The benefit of higher-ranked polymorphism is to allow higher-level, richer abstractions and pattern expression than just the rank-1 polymorphism we have today.
As an example, currently we can express this type:
#!/bin/bash -e | |
if [ "$(uname -s)" != "Darwin" ] | |
then | |
echo "This script is for building a Debian x86_64 image to use on MacOS" | |
exit 1 | |
fi | |
TEMP="$(mktemp -d build.XXXXX)" | |
cp preseed.cfg $TEMP |
[ Update 2020-05-31: I won't be maintaining this page or responding to comments anymore (except for perhaps a few exceptional occasions). ]
Most of the terminal emulators auto-detect when a URL appears onscreen and allow to conveniently open them (e.g. via Ctrl+click or Cmd+click, or the right click menu).
It was, however, not possible until now for arbitrary text to point to URLs, just as on webpages.
When you set Let's Encrypt up, you will:
domain.key
domain.crt
The domain.key
file is for your eyes only; you should keep it safe where you run taskd
and set server.key
to point to it.
''' | |
########################################################################### | |
Extract SW SMI handlers information from SMRAM dump of Skylake based | |
AMI Aptio V firmware. | |
To use full capabilities of this tool you need to install UEFIDump | |
(https://github.com/LongSoft/UEFITool/releases/tag/A32), ida-efiutils | |
(https://github.com/snare/ida-efiutils) and edit corresponding variables | |
below. |
sudo dnf install qemu-kvm
isopath=/path/to/ubuntu-14.04.3-desktop-amd64.iso
stickdev=/dev/sdX # Make sure this is set to the device for your usb stick
qemu-kvm -drive file=$stickdev,format=raw -m 2048 -pflash /usr/share/edk2.git/ovmf-x64/OVMF-pure-efi.fd -cdrom $isopath