Skip to content

Instantly share code, notes, and snippets.

View pietrorea's full-sized avatar
✌️

Pietro Rea pietrorea

✌️
View GitHub Profile
@pietrorea
pietrorea / gist:c9c5597677eb3db5e3aa90cd0b4e1c1f
Created September 6, 2022 04:06
BBEdit Startup Item - Symbolic link
ls -s ~/path/to/notes.bbprojectd ~/Library/Application Support/BBEdit/Startup Item
@pietrorea
pietrorea / mysql-here-document.sh
Created January 28, 2022 16:47
MySQL here document example
mysql -u root --password="${PASSWORD}" <<EOF
CREATE DATABASE ${DB_NAME};
CREATE USER '${APP_USER}'@'localhost' IDENTIFIED BY '${APP_PASSWORD}';
GRANT ALL ON ${DB_NAME}.* TO '${APP_USER}'@'localhost'
EOF
@pietrorea
pietrorea / ssh-here-document.sh
Created January 28, 2022 16:45
SSH config here document
cat > /etc/ssh/sshd_config << "EOF"
Include /etc/ssh/sshd_config.d/*.conf
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
...
EOF
@pietrorea
pietrorea / nginx-location-block.conf
Created January 27, 2022 20:23
nginx reverse proxy to Wordpress install on another host
location /blog/ {
proxy_pass http://YOUR_IP_ADDRESS/; # this last forward slash is important
proxy_http_version 1.1;
proxy_cache_bypass $http_upgrade;
# Proxy headers
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
@pietrorea
pietrorea / wp-config-additions.php
Last active February 7, 2022 14:46
Wordpress wp-config.php - running behind a reverse proxy that terminates SSL
define( 'WP_HOME', 'https://yoursite.com/blog');
define( 'WP_SITEURL', 'https://yoursite.com/blog');
/**
* This is needed for a reverse proxy setup that terminates SSL and forwards /blog to another host.
* Without it, the Wordpress host doesn't know that it needs to make requests to itself using https.
*/
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
$_SERVER['HTTPS'] = 'on';
}
@pietrorea
pietrorea / script_mysql_secure_installation.sh
Created October 22, 2021 20:01
Installs mysql 8, secures it, creates a user and db
#!/bin/bash
set -e
# Sets up an new myql instalation (Ubuntu 20.04)s
# 1. Downloads mysql-server if necessary
# 2. Secures the installation
# 3. Sets the root password
# 4. Creates an app related DB
@pietrorea
pietrorea / SampleService.swift
Created July 2, 2021 15:13
Alamofire 5.43 `responseDecodable` example
static func load(_ entityId: Int, completion: @escaping ( (SampleServiceResponse?) -> Void)) {
let urlString = "https://api.sweetpeamobile.com/v1/sampleService?locationId=\(locationId)"
AF.request(urlString).responseDecodable(of: SampleServiceResponse.self) { response in
switch response.result {
case .success(let decodedResponse):
completion(decodedResponse)
case .failure(let error):
print("Networking error: \(error.localizedDescription)")
completion(nil)
}
@pietrorea
pietrorea / gist:8fc2c83a26322f3909ab630aee2f5414
Created June 25, 2021 16:08
Set initial view controller in code using SceneDelegate
// First, delete the two storyboard entries in the Info.plist (one newer one for SceneDelegate and a newer one for AppDelegate)
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
guard let windowScene = scene as? UIWindowScene else {
return
}
let blueViewController = UIViewController()
blueViewController.view.backgroundColor = .blue
@pietrorea
pietrorea / UIImage+Extension.m
Created April 16, 2020 03:13
UIImage from UIColor
#import "UIImage+Extension.h"
@implementation UIImage (Extension)
- (UIImage *)imageWithColor:(UIColor *)color
{
UIGraphicsBeginImageContextWithOptions(self.size, NO, self.scale);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(context, 0, self.size.height);
CGContextScaleCTM(context, 1.0, -1.0);
Verifying my Blockstack ID is secured with the address 13XP5d1aPsUQZHt55f3WyYMCHvaWQjgDKu https://explorer.blockstack.org/address/13XP5d1aPsUQZHt55f3WyYMCHvaWQjgDKu