Skip to content

Instantly share code, notes, and snippets.

View sway-config
# Default config for sway
#
# Copy this to ~/.config/sway/config and edit it to your liking.
#
# Read `man 5 sway` for a complete reference.
xwayland enable
### Variables
#
@NobodyXu
NobodyXu / ErasedFnPointer.rs
Last active Jul 22, 2021
A safe type-erased Fn Pointer in rust that can be used to call associated and normal functions
View ErasedFnPointer.rs
use core::ffi::c_void;
use core::mem::transmute;
use core::ptr::null_mut;
use core::marker::PhantomData;
/// ErasedFnPointer can either points to a free function or associated one that
/// `&mut self`
struct ErasedFnPointer<'a, T, Ret> {
struct_pointer: *mut c_void,
fp: *const (),
View multiple-repository-and-identities-git-configuration.md

Setup multiple git identities & git user informations

/!\ Be very carrefull in your setup : any misconfiguration make all the git config to fail silently ! Go trought this guide step by step and it should be fine 😉

Setup multiple git ssh identities for git

  • Generate your SSH keys as per your git provider documentation.

  • Add each public SSH keys to your git providers acounts.

  • In your ~/.ssh/config, set each ssh key for each repository as in this exemple:

@NobodyXu
NobodyXu / icecc-jobs.pl
Created Mar 20, 2021 — forked from mystor/icecc-jobs.pl
A simple script for counting the avaliable jobs in an icecream network
View icecc-jobs.pl
#!/usr/bin/env perl
# This short script queries the icecream scheduler to discover what machines are connected,
# and sums the maximum job counts for all x86-64 machines.
# It can be used in your mozconfig as follows:
# mk_add_options MOZ_MAKE_FLAGS="-j$(icecc-jobs)"
# if this script is on your PATH, and named icecc-jobs
use List::Util qw(sum0);
View newstack-01-file-descriptors.c
ssize_t read(int fd, void *buf, size_t count);
ssize_t write(int fd, const void *buf, size_t count);
@NobodyXu
NobodyXu / unity.md
Created Jan 23, 2020
Run vmware with unity using cygwin/x
View unity.md

Install cygwin/x

See here

Putty

Install putty, and then enter your virtual machine's IP, then go to Connection->ssh->X11, click Enable X11 forwarding and give the Xauthority file C:\Cygwin64\C:\cygwin64\home\${YOUR_USERNAME_HERE}\.Xauthority. Save the session with your favorite name to reuse the session.

@NobodyXu
NobodyXu / WSL.md
Last active Jan 23, 2020
Run WSL with GUI
View WSL.md

cygwin/x

First, install cygwin/x. If no mirror are found, google 'cygwin/x mirrors' and you shall find many. Make sure xorg is always installed. Then, open "XWin server" file location from start menu, add -- -listen tcp to the end of target.

WSL

View Interesting_commands.md
  1. tree: Display directory and its child dir (can be controlled via -L level) in tree.
@NobodyXu
NobodyXu / gen.sh
Created Nov 6, 2019
generating with seq quickly
View gen.sh
seq 1 100000000 | parallel -k --pipe "sed 's/[0-9]*/https:\/\/&/'"
@NobodyXu
NobodyXu / pasca_triangle.py
Last active Mar 28, 2019
challenges -- A place where I save the solutions to challenges which I think is beautiful
View pasca_triangle.py
#!/usr/bin/env python3
import sys
# rowList is a list who the first and last element is 0(which will not be printed)
def print_pascal_triangle_row(row):
print(" ".join([str(each) for each in row[1 : -1]]))
# @parm n denotes how many rows should it print
def print_pascal_triangle(n):