Skip to content

Instantly share code, notes, and snippets.

View crivotz's full-sized avatar
🏠
Working from home

Mauro Locatelli crivotz

🏠
Working from home
View GitHub Profile
sudo apt-get install -y \
git \
g++ \
libgtk-3-dev \
gtk-doc-tools \
gnutls-bin \
valac \
intltool \
libtool \
libpcre2-dev \
@crivotz
crivotz / rails_dirty.md
Last active November 15, 2021 11:09
Rails dirty prameters

Rails dirty

After modifying an object and after saving to the database, or within after_save:

Rails <= 5 Rails >= 5.1
attribute_changed? saved_change_to_attribute?
changed? saved_changes?
changes saved_changes
attribute_was attribute_before_last_save
@crivotz
crivotz / makerequest.js
Created January 8, 2019 15:00
Request with XMLHttpRequest and promises
function makeRequest(opts) {
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.open(opts.method, opts.url);
xhr.withCredentials = true;
xhr.onload = function() {
if (this.status >= 200 && this.status < 300) {
resolve(xhr.response);
} else {
reject({
<% @post.uploads.each do |upload| %>
<% if upload.variable? %>
<%= link_to image_tag(upload.variant(resize: "400x400")), upload %>
<% elsif upload.previewable? %>
<%= link_to image_tag(upload.preview(resize: "400x400")), rails_blob_path(upload, disposition: :attachment) %>
<% elsif upload.image? %>
<%= link_to image_tag(upload, width: 400), upload %>
<% else %>
<%= link_to upload.filename, rails_blob_path(upload, disposition: :attachment) %>
<% end %>
@crivotz
crivotz / redis.md
Last active July 29, 2019 10:57
Redis installation on Debian Stretch
sudo apt-get install redis-server
sudo systemctl enable redis-server.service
sudo vim /etc/redis/redis.conf

set

maxmemory 256mb
maxmemory-policy allkeys-lru
@crivotz
crivotz / i3-gaps.md
Last active December 18, 2020 08:31
i3-gaps install/update

Debian dependencies

sudo apt-get install gcc make dh-autoreconf libxcb-keysyms1-dev libpango1.0-dev libxcb-util0-dev xcb libxcb1-dev libxcb-icccm4-dev libyajl-dev libev-dev libxcb-xkb-dev libxcb-cursor-dev libxkbcommon-dev libxcb-xinerama0-dev libxkbcommon-x11-dev libstartup-notification0-dev libxcb-randr0-dev libxcb-xrm0 libxcb-xrm-dev libxcb-shape0 libxcb-shape0-dev
cd /usr/local/src

Clone the repository

git clone https://www.github.com/Airblader/i3 i3-gaps

@crivotz
crivotz / git.sh
Created March 25, 2020 13:43
Compile git
sudo apt install make libssl-dev libghc-zlib-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip
cd git
make prefix=/usr/local all
sudo make prefix=/usr/local install
@crivotz
crivotz / fetch.js
Created April 3, 2020 12:52
Fetch example
async function init() {
try {
let login = await fetch('http://xxx.xxx.xxx.xxx/api/login', {
method: 'POST',
body: JSON.stringify({login: 'user', password: 'password'}),
}).then(response => response.json());
let action = await fetch('http://xxx.xxx.xxx.xxx/api/action', {
method: 'GET',
headers: {'Authorization': login.token},
}).then(response => response.json());
@crivotz
crivotz / rails_update.md
Created June 18, 2021 08:31
Rails update

Rails update Verifica possibili aggiornamenti

bundle outdated

Aggiornare versione in gemfile

bundle update rails
rails app:update
@crivotz
crivotz / dropbox_uninstall.sh
Created December 29, 2021 11:08
Dropbox headless uninstall
dropbox stop
dropbox status # Should report "not running"
rm -rf ~/.dropbox-dist
rm -rf /var/lib/dropbox
rm -rf ~/.dropbox*
sudo apt-get remove nautilus-dropbox
sudo apt-get remove dropbox
rm /etc/apt/source.d/dropbox