Skip to content

Instantly share code, notes, and snippets.

View eduardofcgo's full-sized avatar
⛷️

Eduardo Gonçalves eduardofcgo

⛷️
View GitHub Profile
@eduardofcgo
eduardofcgo / compose.py
Last active December 11, 2017 23:40
compose functions in python
from functools import reduce
def compose(fns):
def _compose(fn1, fn2):
return lambda x: fn2(fn1(x))
if len(fns) == 0:
return lambda x: x
return reduce(_compose, fns)
(defn armstrong? [n]
(let [n-chars (apply vector (str n))]
(= n
(int
(reduce +
(map
(comp
#(Math/pow % (count n-chars))
#(Character/getNumericValue %))
from typing import Iterable, Iterator, TypeVar, Generic, List, Optional
T = TypeVar('T')
class _CachedIterator(Generic[T]):
def __init__(self, cached_iterable: CachedIterable[T]) -> None:
self.cached_iterable = cached_iterable
def numbers_for_bounds(*args):
assert args and len(args) % 2, 'Unbalanced or empty bounds'
bounds = list(args)
first_bounds, *range_bounds = sorted(zip(bounds[0::2], bounds[1::2]))
start, first_upper = first_bounds
yield from range(start, first_upper + 1)
for lower, upper in range_bounds:
function delay(fns, interval) {
[fn, ...fnsTail] = fns
if (fn) {
setTimeout(
() => { fn(); delay(fnsTail, interval) },
interval
)
}
}
from inspect import isgeneratorfunction
class Deferer:
def __init__(self):
self.defers = []
@classmethod
def build(cls, func):
@eduardofcgo
eduardofcgo / .env
Last active January 20, 2021 00:48
USERNAME=user
PASSWORD=pass
@eduardofcgo
eduardofcgo / fix_dates.sh
Last active February 7, 2021 10:18
fix dates of captured imovie footage
#!/bin/sh
find . -name "*.mp4" -print0 | while read -d $'\0' filepath
do
echo "$filepath"
filedate=$(echo "$filepath" | ggrep -P -o "(?<=clip-)(.*)(?=.mp4)")
formateddate=$(date -j -f "%F %H;%M;%S" "$filedate" "+%Y:%m:%d %H:%M:%S")
if [ -z "$formateddate" ]
then
>&2 echo "Invalid date. Skipping command"
{
"log":{
"access":"/var/log/v2ray/access.log",
"error":"/var/log/v2ray/error.log",
"loglevel":"warning"
},
"inbounds":[
{
"port":80,
"protocol":"vmess",
@eduardofcgo
eduardofcgo / guia.md
Last active February 11, 2021 10:10
Guia de Aula Desktop Environment e VNC

Usando o sistema operativo Linux, distribuição Ubuntu.

  1. Actualiza os repositórios dos pacotes.
  2. Instalar os pacotes: xfce4 e xfce4-goodies. Escolher “gdm” durante a instalação.
  3. O ambiente gráfico já está instalado. Agora temos de nos ligar ao ao nosso computador através do protocolo VNC. No servidor instalamos o pacote tightvncserver.
  4. Para iniciar o servidor VNC, usar o comando vncserver. Sempre que se muda as configurações, é necessário o reiniciar. Para parar o servidor: vncserver -kill :1
  5. O script de configuração do VNC está localizado em /root/.vnc/xstartup deverá ser configurado para iniciar o ambiente gráfico xfce4 que instalámos anteriormente. Deverá ter o seguinte conteúdo:
#!/bin/bash
xrdb $HOME/.Xresources