Skip to content

Instantly share code, notes, and snippets.

View merqlove's full-sized avatar

Alexander Merkulov merqlove

View GitHub Profile
#!/usr/bin/env elixir
defmodule Committer do
defstruct [:name, :email]
def list(repo) do
repo
|> from_repo
|> Stream.unfold(fn str ->
case String.split(str, "\n", parts: 2, trim: true) do
@merqlove
merqlove / categories.sql
Last active June 8, 2016 16:24
Joomla K2 2.x migrate to Native Joomla 2.5
INSERT INTO lgcp8_categories (id, title, alias, parent_id, published, access, description, language, created_user_id, modified_user_id, metadesc, metakey, metadata, params, extension) SELECT id+1000, name, alias, CASE WHEN parent = 0 THEN 1 ELSE parent+1000 END, published, access, description, language, 996, 0, name, name, "{}", "{\"category_layout\":\"\",\"image\":\"\"}", "com_content" FROM lgcp8_k2_categories
@merqlove
merqlove / iconv_install_ubuntu14.sh
Last active February 16, 2025 22:17 — forked from paulczar/gist:5493708
Install libiconv on Ubuntu 14.04
--- srclib/stdio.in.h.orig 2011-08-07 16:42:06.000000000 +0300
+++ srclib/stdio.in.h 2013-01-10 15:53:03.000000000 +0200
@@ -695,7 +695,9 @@
/* It is very rare that the developer ever has full control of stdin,
so any use of gets warrants an unconditional warning. Assume it is
always declared, since it is required by C89. */
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16)
+ _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
+#endif
@merqlove
merqlove / config.ex
Last active July 30, 2016 17:20 — forked from bitwalker/config.ex
Useful config wrapper for Elixir
defmodule Config do
@moduledoc """
This module handles fetching values from the config with some additional niceties
"""
@default_app_name :some_app
@default_endpoint SomeApp.Endpoint
@doc """
Fetches key from the default endpoint config, and prepare it with _get/3.
@merqlove
merqlove / best_some_a.ex
Last active August 13, 2016 15:53
IntelliJ Elixir debug aliasing with base features.
module Best.SomeA do
def some_func, do: IO.puts("Hello World!"
end
Concurrent
.future(thread_pool) do
update_spin(spin, title: "Resizing image #{image.id}")
service.run(image)
end
.then do |r|
update_spin(spin, title: "Resized image #{r.id}")
r
end
.rescue { |_| nil }
@merqlove
merqlove / app.html
Last active January 9, 2017 15:42
Autocomplete Address with Semantic UI
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Autocomplete address With Semantic UI</title>
<link rel="stylesheet" href="semantic/dist/semantic.css">
</head>
<body>
@merqlove
merqlove / demo.liquid
Last active January 29, 2017 12:09
Liquid example
<!DOCTYPE html>
<html lang="en">
<head>
<title>{{ site.name }}</title>
<meta charset="utf-8">
<meta name="format-detection" content="telephone=no" />
<link rel="icon" href="{{ 'favicon.ico' | theme_image_url }}">
<link rel="shortcut icon" href="{{ 'favicon.ico' | theme_image_url }}">
{{ 'style.css' | stylesheet_tag }}
{{ 'jquery.js' | javascript_tag }}
@merqlove
merqlove / puma.service
Last active February 2, 2017 15:30
SystemD Puma example
[Unit]
Description=MRCR Sites Puma Server
[email protected] mongod.service
[email protected] mongod.service
[email protected] mongod.service
[Service]
Type=simple
User=merkulov
PIDFile=/srv/apps/sites_mrcr_ru/shared/tmp/pids/puma.pid
@merqlove
merqlove / phoenix_ng2.ts
Last active March 6, 2017 14:09
Phoenix provider with Angular2
import {Injectable, OpaqueToken, Inject} from '@angular/core';
import * as PhoenixBase from 'phoenix/web/static/js/phoenix.js';
import {Channel, Socket} from 'phoenix/web/static/js/phoenix.js';
import {Observable} from 'rxjs/Observable';
import {isFunction} from 'lodash';
import {Observer} from 'rxjs/Observer';
import {LoggerService} from './';
export declare class Timer {
callback: any;