- Download
network-mode.sh
- Set executable flag and upload
network-mode.sh
to router (at$IP
)chmod +x network-mode.sh scp network-mode.sh root@$IP:/etc/gl-switch.d/network-mode.sh
- Go to router web UI (
http://$IP
). - Go to
System > Toggle Button Settings
, selectNetwork Mode
. - Profit.
# /etc/systemd/system/multi-user.target.wants/photobox-trigger.service | |
[Unit] | |
Description=Photobox Trigger Service | |
After=multi-user.target | |
[Service] | |
Type=idle | |
User=pi | |
ExecStart=/usr/bin/python3 /home/pi/photobox/trigger.py | |
Restart=on-failure |
ERNNOS = Hash(Pointer(Int32), Int32).new(0) | |
enum Errno | |
def self.pointer | |
{% if flag?(:netbsd) || flag?(:openbsd) || flag?(:android) %} | |
LibC.__errno | |
{% elsif flag?(:linux) || flag?(:dragonfly) %} | |
LibC.__errno_location | |
{% elsif flag?(:wasi) %} | |
raise NotImplementedError.new("Errno.pointer") |
## Generate database of def tallies | |
## $ make | |
SOURCES := $(shell find src -name '*.cr') | |
SPEC_SOURCES := $(shell find spec -name '*.cr') | |
CRYSTAL := bin/crystal | |
SQLITE := sqlite3 | |
SQLITE-UTILS := sqlite-utils |
This output is generated by the prototype unreachable
tool from bcardiff/crystal-tool-demo.
Usage (working directory is expected to be the crystal repository)
git clone https://github.com/bcardiff/crystal-tool-demo
cd crystal-tool-demo
sed -i -E 's|require "compiler/crystal/\*\*"|require "compiler/requires"|' src/unused.cr
make bin/unused
cd ..
This output is generated by a prototype of crystal tool unreachable
(straight-shoota:feat/tool-unreachable@81ea65e8).
Usage:
git fetch git@github.com:straight-shoota/crystal feat/tool-unreachable
git checkout FETCH_HEAD
make crystal
bin/crystal tool unreachable src/compiler/crystal.cr -c src/compiler/ > unreachable.log
[ | |
{ | |
"author": "HertzDevil", | |
"state": "APPROVED", | |
"pr": "PR_kwDOAGkZhc5QGNG7" | |
},{ | |
"author": "HertzDevil", | |
"state": "APPROVED", | |
"pr": "PR_kwDOAGkZhc5QGL6i" | |
},{ |
diff --git 1/regression-io.no-debug.bad.ll 2/regression-io.no-debug.good.ll | |
index 6e89ec43b..6d5084431 100644 | |
--- 1/regression-io.no-debug.bad.ll | |
+++ 2/regression-io.no-debug.good.ll | |
@@ -123,16 +123,14 @@ target triple = "x86_64-unknown-linux-gnu" | |
%"struct.LibC::Addrinfo" = type { i32, i32, i32, i32, i32, %"struct.LibC::Sockaddr"*, i8*, %"struct.LibC::Addrinfo"* } | |
%"struct.LibC::Sockaddr" = type { i16, [14 x i8] } | |
%"struct.LibC::StackT" = type { i8*, i32, i64 } | |
+%"Char::Reader" = type { %String*, i32, i32, i32, %"(UInt8 | Nil)", i1 } |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOZzoh/ZzxqO6+SVFlTrdVqkrq842RvfV6UonV7sdAZ5 Johannes@Milos |
Comparing compile time and run time performance of Crystal on Windows and Linux. The sample program is https://github.com/crystal-lang/crystal/blob/b7f3f102fd68fcf9fe4f074513c9e374ec98b492/samples/havlak.cr
Both binaries are built and executed on the same system via WSL (this might cause a little bias, but WSL2 performance is very comparative between Windows and Linux). Hardware is a XPS 9710 with i7 11800H.
;TLDR: Compiler performance is very similar, except for LLVM codegen where Windows has the edge (this is probably due to the newer LLVM version). Runtime performance