Skip to content

Instantly share code, notes, and snippets.

View willnss's full-sized avatar
:shipit:
Focusing

Wilian N. Santos willnss

:shipit:
Focusing
  • Brazil
View GitHub Profile
@willnss
willnss / devstack-ubuntu
Created August 18, 2023 18:10
Provisioning openstack devstack self-hosted on ubuntu server 22
# Instalar um servidor local de mDNS
sudo apt update
sudo apt install avahi-daemon
sudo nano /etc/avahi/avahi-daemon.conf
# Ajustar o nome para o host-name desejado, ex:
host-name=openstackdev
sudo service avahi-daemon restart
sudo systemctl enable avahi-daemon.service
# Criar um usuário para o devstack
sudo useradd -s /bin/bash -d /opt/stack -m stack
@willnss
willnss / ajustes_docker-compose-archwsl.sh
Created March 6, 2022 18:32
Ajuste de problema com o docker-compose no archwsl "dlopen: libcrypt.so.1: cannot open shared object file: No such file or directory"
cd /usr/lib
sudo ln ./libcrypt.so libcrypt.so.1
# docker-compose -v
@willnss
willnss / CPFAttribute.cs
Last active September 21, 2021 01:36
Classe de exemplo para o amigo Ademir
public class CPFAttribute : ValidationAttribute
{
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
if (string.IsNullOrEmpty(value)) return new ValidationResult("CPF é obrigatório");
var cpf = value.ToString().Replace('.', '').Replace('-', '');
return IsCpf(cpf)
? ValidationResult.Success
: new ValidationResult("CPF inválido!");
@willnss
willnss / remove-gdm-sleep-dconf.sh
Created December 26, 2020 00:07
Remove idle sleep on gdm through ssh after an inactive period
# access machinectl as gdm and change the timeout
sudo machinectl shell gdm@ /bin/bash
export GSETTINGS_BACKEND=dconf
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 0
# restart gdm
systemctl restart gdm
#!/bin/bash
# Reset KDE plasma to defaults
rm ~/.config/plasma-org.kde.plasma.desktop-appletsrc
rm ~/.config/plasmarc
rm ~/.config/plasmashellrc
rm ~/.config/kdeglobals
rm ~/.config/kwinrc
@willnss
willnss / ambiente-wsl-01.sh
Created June 23, 2020 02:09
Montando ambiente de desenvolvimento no Windows com VS Code e WSL2
# a partir do terminal WSL do Ubuntu
sudo apt update
sudo apt ugrade
cd ~
# certifique de possuir o VS Code instalado no Windows
code .
sudo curl -fsSL https://starship.rs/install.sh | bash
nano ~/.bashrc
# após editar o .bashrc execute `source ~/.profile`
@willnss
willnss / gitflow-breakdown.md
Created April 23, 2020 00:10 — forked from JamesMGreene/gitflow-breakdown.md
A comparison of using `git flow` commands versus raw `git` commands.

Initialize

gitflow git
git flow init git init
  git commit --allow-empty -m "Initial commit"
  git checkout -b develop master

Connect to the remote repository

@willnss
willnss / prepare-ubuntu.sh
Last active February 15, 2020 11:26
script de auxílio
sudo apt-get update #atualiza o cache do gerênciador de pacotes padrão do sistema
sudo apt-get install snapd #instala o gerênciador snap caso não tenha, via gerênciador de pacotes padrão
sudo apt-get install build-essential # instala ferramentas úteis para compilação gcc, make
sudo apt-get install zram-config # usa a memória ao invés do disco para swap evitando escritas desnecessárias
sudo apt-get install git # instala o git para uso no vscode e terminal
sudo apt-get install wget # instala o wget para baixar scripts e outras coisas via linha de comando
sudo apt-get install curl # instala o curl para baixar scripts e outras coisas via linha de comando
sudo apt-get install fonts-firacode # instalando fonts fira-code para habilitar ligaturas no terminal e vscode manualmente (https://github.com/tonsky/FiraCode)
sudo snap install snap-store # instala a store de snaps
sudo snap install code --classic # instala o vscode

Instalando mongodb em uma máquina virtual com o Vagrant :shipit: :shipit:

Requisitos: virtualbox + extension pack e o vagrant com versões compatíveis

Obs: arquivos sh, vagrantfile logo após este markdown

Acessar o terminal ou cmd e adicionar a box desejada a se trabalhar, optei por utilizar a ubuntu/trusty32. Outras podem ser obtidas em https://atlas.hashicorp.com/boxes/search Caso já possua uma box pode pular para o próximo passo.

//reference http://stackoverflow.com/questions/15644655/fill-pdf-template-acrofield-with-html-formatted-text-using-itextsharp
void AddHTMLToContent(String htmlText,PdfContentByte contentBtye,IList<AcroFields.FieldPosition> pos)
{
Paragraph par = new Paragraph();
ColumnText c1 = new ColumnText(contentBtye);
try
{
List<IElement> elements = HTMLWorker.ParseToList(new StringReader(htmlText),null);