| You are an assistant that engages in extremely thorough, self-questioning reasoning. Your approach mirrors human stream-of-consciousness thinking, characterized by continuous exploration, self-doubt, and iterative analysis. | |
| ## Core Principles | |
| 1. EXPLORATION OVER CONCLUSION | |
| - Never rush to conclusions | |
| - Keep exploring until a solution emerges naturally from the evidence | |
| - If uncertain, continue reasoning indefinitely | |
| - Question every assumption and inference |
| fn get_move_value(&mut self, is_trigger_bot: bool) -> Point { | |
| if !is_trigger_bot { | |
| let current_frame_id = self.latest_frame_id.lock().unwrap().clone(); | |
| if current_frame_id == self.current_frame_id { | |
| return Point::new(0, 0); | |
| } | |
| self.current_frame_id = current_frame_id; | |
| } | |
| let current_frame = self.latest_frame.lock().unwrap().clone(); | |
| if current_frame.is_none() { |
| local wezterm = require 'wezterm' | |
| local themes = {} | |
| for k, _ in pairs(wezterm.get_builtin_color_schemes()) do | |
| table.insert(themes, k) | |
| end | |
| local fav_themes = { | |
| "SweetTerminal (Gogh)", | |
| "PaulMillr", |
I’ve written a newer optimized 2026 version of this guide with a faster setup using Zinit + Starship and improved plugin loading.
This version avoids slow shell startups and works better with modern Zsh setups.
Updated guide: https://gist.github.com/n1snt/2cccc8aa5f7b645a7628d3512c70deb6
Making a custom render type with a custom shader requires a number of things to exist at once:
- A ShaderInstance which references your shader json. The RegisterShadersEvent lets you define a ShaderInstance, and has a callback for when the shader is fully loaded from disk.
- A ShaderStateShard with a supplier that returns the ShaderInstance. The supplier exists so that shaders can reload themselves when you change resourcepacks or do a F3+T reload.
- A RenderType which uses the ShaderStateShard as its shader state.
- A shader json, which declares the shader properties and points to the shader programs (vsh and fsh).
- A vertex shader program, which describes how the vertex data is transformed before passing into the rasterizer and being turned into pixels.
- A fragment shader program, which describes how the interpolated values from the vertices get turned into color values before being passed into the output blending stage.
Note: The vanilla logic does not normally allow namespaces in the shader
| package gigaherz.eyes.client; | |
| import gigaherz.eyes.EyesInTheDarkness; | |
| import gigaherz.eyes.entity.EyesEntity; | |
| import net.minecraft.client.Minecraft; | |
| import net.minecraftforge.api.distmarker.Dist; | |
| import net.minecraftforge.client.event.ModelRegistryEvent; | |
| import net.minecraftforge.client.event.RenderGameOverlayEvent; | |
| import net.minecraftforge.event.TickEvent; | |
| import net.minecraftforge.eventbus.api.SubscribeEvent; |
- GUID Partition Table
- Encrypted root and swap partitions with dm-crypt
- Btrfs filesystem with support to snapshots
- bspwm + polybar
Download the install ISO image at https://archlinux.org/download/
Burn the ISO to a USB drive and boot from it.
I've used this guide through 2024 despite archinstall and it's still more or less valid. After having
used archinstall twice and having encountered obscure issues (luksOpen taking ages, or slow
reboots in general) I switched back to a manual setup and it seems to be almost as straightforward.
Always refer to the official guide in case of doubt.
One important thing first: the environment you will encounter on the live image is very different from what you'll end up installing, some things are significantly easier there: e.g. wifi tools come
Valid as of September 2020
note: if you have shell access and want to automatically renew, follow the steps on this page instead
Much of the current documentation on this from LetsEncryt and Godaddy suggests that this is a very hard thing to do - but I'm okay with spending 10 minutes every 2-3 months for a free, quality SSL certificate. If you are too, here's how I do it.
