Instantly share code, notes, and snippets.

View fix.md
sudo apt-get install xserver-xorg-legacy

Edit /etc/X11/Xwrapper.config

allowed_users=anybody
needs_root_rights=yes
View gpg-key-to-datamatrix.sh
#!/bin/bash
add_caption() {
convert "${1}" \
-quality 100 \
-units PixelsPerInch \
-resize 200% \
\( -background white -fill black -size x48 \
label:"${2}" -trim +repage \
-bordercolor white -border 10 \
View gitlab-docker-migrate.md

Nell'host di destinazione, avvio un nuovo container GitLab:

docker run --detach --hostname git.decktutor.net --publish 443:443 --publish 80:80 --publish 22:22 --name gitlab  --restart always  --volume /srv/gitlab/config:/etc/gitlab  --volume /srv/gitlab/logs:/var/log/gitlab  --volume /srv/gitlab/data:/var/opt/gitlab  gitlab/gitlab-ce:10.8.4-ce.0

Copio gitlab.rb dalla sorgente alla destinazione /srv/gitlab/config/gitlab.rb

Nell'host di destinazione, riconfiguro gitlab con il nuovo gitlab.rb:

docker exec -ti gitlab gitlab-ctl reconfigure
View weak-ptr-global.cpp
#include <cassert>
#include <iostream>
#include <memory>
#include <mutex>
#include <string>
#include <unordered_map>
template <typename T>
std::shared_ptr<T> get_global(int id) {
using Map = std::unordered_map<int, std::weak_ptr<T>>;
View client.js
var request = require('request');
var path = require('path');
var fs = require('fs');
var filename = process.argv[2];
var target = 'http://localhost:3000/upload/' + path.basename(filename);
var rs = fs.createReadStream(filename);
var ws = request.post(target);
View qt-eigen-opengl-demo.cmake
add_custom_target(demos)
find_package(Qt5Core REQUIRED)
find_package(Qt5Gui REQUIRED)
find_package(Qt5OpenGL REQUIRED)
find_package(OpenGL)
find_package(Eigen3)
set(CMAKE_AUTOMOC ON)
View fix_modular_sequence.cpp
template <typename T>
T fix_modular_sequence(T&& seq, const typename T::value_type modulus) {
const auto threshold = modulus / 2.0;
auto it = seq.begin();
auto prev = *it;
while (it != seq.end()) {
++it;
auto& curr = *it;
auto diff = curr - prev;
if (std::abs(diff) > threshold) curr -= (diff < 0 ? -1 : 1) * modulus;
View chromium-gpu-vivante.sh
#!/bin/sh
if [ "${1}" == "forever" ]; then
while sleep 1; do "${0}"; done
exit 0
fi
export DISPLAY=:0
# url="http://jsfiddle.net/gionaf/Ugc5g/embedded/result/"
View cross-compile-qt5.8-rpi3.sh
./configure -release -opengl es2 -device linux-rpi3-vc4-g++ -device-option CROSS_COMPILE=/opt/rpi3/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf- -sysroot /opt/rpi3/gentoo-sysroot/ -extprefix /opt/Qt/5.8/rpi3 -v -nomake examples -nomake tests -no-use-gold-linker -opensource -confirm-license -skip qtscript
gmake
sudo gmake install
View core-dump.cpp
#include <iostream>
#include <sys/resource.h>
int main() {
rlimit core_limits;
core_limits.rlim_cur = core_limits.rlim_max = RLIM_INFINITY;
setrlimit(RLIMIT_CORE, &core_limits);
std::cout << "begin\n";
int* x = 0;