Skip to content

Instantly share code, notes, and snippets.

@Frizlab
Frizlab / set_sound_volume.sh
Last active September 7, 2017 12:42
A small shell script that can be used on macOS to change the sound volume from the Terminal. Requires bc (should be built-in on macOS).
#!/bin/bash
if [ -z "$1" -o "$1" -lt 0 -o "$1" -gt 100 ]; then
echo "Usage: $0 new_volume" >/dev/stderr
echo " new_volume must be between 0 and 100" >/dev/stderr
exit 1
fi
new_volume="$(echo "($1 * 8) / 100" | bc)"
osascript -e "tell application \"System Events\" to set volume $new_volume"; # Max is 8, min is 0
/* Playground - noun: a place where people can play */
/* This test does nothing in the playground. Not sure why it does not work, but
* I'm not that surprised it doesn't. */
import Foundation
class Channel<T> {
@Frizlab
Frizlab / UUID+Parsing.swift
Created December 2, 2016 13:50
Date from UUID in Swift
/* From https://www.famkruithof.net/guid-uuid-make.html
 * and https://www.famkruithof.net/guid-uuid-timebased.html */
extension UUID {
var isTimeUUID: Bool {
return (uuid.8 & 0xC0) == 0x80 /* Variant is the one we expect */ && (uuid.6 & 0xF0) == 0x10 /* Time-based version of the variant */
}
var generationDate: Date? {
@Frizlab
Frizlab / .bash_profile
Last active August 2, 2017 15:06
Parts of My Bash Profile — Use At Your Own Risks!
#!/bin/bash
# Init file for login shells
# Most of the instructions here should be in the .bashrc file...
function show_branch1() {
git branch >/dev/null 2>&1
if [ $? -eq 0 ]; then printf "["; fi
}
@Frizlab
Frizlab / print_message_read_response.bash
Created January 19, 2017 16:16
A bash function to write a given message and retrieve response in named variable
# First argument is the name of the variable in which you want the answer to be.
# Next arguments will compose the message to show to the user before starting
# the reading. An additional space will be added at the end of the message.
print_message_read_response() {
var_name="$1"
eval $var_name=
shift
read -p "$* " $var_name
}
@Frizlab
Frizlab / XPathQuery.swift
Created May 28, 2017 01:35
Safe XPath Queries in Swift
/*
 * XPathQuery.swift
 * test_lbp
 *
 * Originally created by Matt Gallagher on 4/08/08.
 * Heavily modified (conversion to swift, better libxml2 nodes to object
 * conversion, etc.) by François Lamboley.
 *
 * Created by François Lamboley on 16/04/2017.
 * Copyright © 2017 François Lamboley. All rights reserved.
@Frizlab
Frizlab / MyAnyHashable.swift
Created May 31, 2017 13:13
A Simple AnyHashable Implementation
protocol HashableBox {
func unbox<T : Hashable>() -> T?
var hashValue: Int {get}
func isEqual(_ other: HashableBox) -> Bool
}
struct ConcreteHashableBox<Base : Hashable> : HashableBox {
@Frizlab
Frizlab / KeychainUtils.swift
Last active August 22, 2018 07:59
KeychainUtils for Apple Platforms (iOS, macOS, watchOS, tvOS)
/* Note: There are a lot of assumption on the type of Keychain element that are
 * inserted, etc. You should adjust the code accordingly to your needs. */
/* Note2: Indent spacing is **3** tabs, but gist does not propose the option… */
import Foundation
import Security
struct Keychain {
class HighlightColorTextFieldCell : NSTextFieldCell {
var hightlightColor: NSColor? {
didSet {
updateTextColor()
}
}
var nonHighlightedTextColor: NSColor? {
didSet {
@Frizlab
Frizlab / logs.txt
Created September 26, 2018 21:08
Swift compilation failure
FAIL: Swift(linux-x86_64) :: Index/Store/output-failure.swift (10471 of 11161)
******************** TEST 'Swift(linux-x86_64) :: Index/Store/output-failure.swift' FAILED ********************
Script:
--
rm -rf "/root/swift-source/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Index/Store/Output/output-failure.swift.tmp" && mkdir -p "/root/swift-source/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Index/Store/Output/output-failure.swift.tmp"
mkdir /root/swift-source/build/buildbot_linux/swift-linux-x86_64/test-linux-x86_64/Index/Store/Output/output-failure.swift.tmp/idx
/root/swift-source/build/buildbot_linux/swift-linux-x86_64/bin/swift -frontend -target x86_64-unknown-linux-gnu -module-cache-path '/root/swift-source/build/buildbot_linux/swift-linux-x86_64/./swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache' -swift-version 3 /root/swift-source/swift/test/Index/Store/output-failure.swift -typecheck
chmod -w /root/swift-source/build/buildbot_linux/swift-linux-x86_64/test-lin