Skip to content

Instantly share code, notes, and snippets.

View Guiorgy's full-sized avatar

Guiorgy Guiorgy

  • Ecopre
  • Georgia
View GitHub Profile
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
<style type="text/css">
#sampleDialog{
height:200px;
width:500px;
background:white;
@petervanderdoes
petervanderdoes / zfs_health.sh
Last active March 18, 2025 23:23
ZFS Health Check Script
#! /usr/local/bin/bash
#
# Calomel.org
# https://calomel.org/zfs_health_check_script.html
# FreeBSD 9.1 ZFS Health Check script
# zfs_health.sh @ Version 0.15
# Check health of ZFS volumes and drives. On any faults send email. In FreeBSD
# 10 there is supposed to be a ZFSd daemon to monitor the health of the ZFS
# pools. For now, in FreeBSD 9, we will make our own checks and run this script
@hed0rah
hed0rah / gcc-security.txt
Last active April 8, 2026 17:16
GCC security related flags reference.
GCC security related flags reference.
Source material:
http://security.stackexchange.com/questions/24444/what-is-the-most-hardened-set-of-options-for-gcc-compiling-c-c
https://wiki.gentoo.org/wiki/Hardened_Gentoo
https://wiki.debian.org/Hardening
===================================================================================
GCC Security related flags and options:
@hedzr
hedzr / setup-android-build-tools.sh
Last active April 30, 2019 21:21
setup-android-build-tools-on-ubuntu-16-or-heigher
#!/bin/bash
setup-android-build-tools () {
sudo apt install -y openjdk-8-jdk
mkdir -P ~/Android/sdk
pushd ~/Android/sdk >/dev/null
[ -d tools ] || {
[ -f sdk-tools-linux-3859397.zip ] || wget -c https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip
[ -d tools ] || [ -f sdk-tools-linux-3859397.zip ] && unzip sdk-tools-linux-3859397.zip
@Guiorgy
Guiorgy / FenwickTree.cpp
Created December 16, 2018 21:20
FenwickTree structure for c++
struct FenvickTree {
struct Node {
int Value;
int Sum;
int Parent;
int Next;
};
vector<Node> Tree;
@Guiorgy
Guiorgy / Xamarin.Android Manifest merging workaround.md
Last active January 21, 2025 14:03
Currently (11/1/19) Xamarin does not support merging manifest, or having different manifests for different build configurations. This is a workaround originally found by AlexanderMelchers at https://forums.xamarin.com/discussion/97461/android-manifest-file-merge-rules
  1. Download AXMLPrinter2.jar
  2. Build your solution and create an archive (.apk) by selecting Build->Archive...
  3. After archiving is done, open folder and find the archived *.apk, open the archive (for example using 7Zip) and extract/unzip AndroidManifest.xml
  4. Open any text editor and type: start cmd.exe /c "java -jar AXMLPrinter2.jar AndroidManifest.xml > AndroidManifest.plaintext.xml" and save it as a *.bat file in the same directory
  5. Run the *.bat file and check the resulting AndroidManifest.plaintext.xml file. This is the file we will be editing using a shell script
  6. Create the shell script you need. It should target obj\$configuration\android\AndroidManifest.xml for example: (Get-Content 'obj\Release\*\android\AndroidManifest.xml').replace('<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />', '') | Set-Content 'obj\Release\*\android\AndroidManifest.xml' the RemoveAndroidPermission.ps1 script
@Guiorgy
Guiorgy / PrimitiveContainerConverter.java
Created June 19, 2019 10:57
A simple List to primitive array, and primitive array to List converter
@SuppressWarnings({"WeakerAccess", "unused"})
public abstract class PrimitiveContainerConverter {
public interface ListByteRef extends Supplier<List<? extends Byte>> {}
/**
* Convert Lists of {@link Byte} to array of primitive type byte
*
* usage: array = toPrimitiveArray(() -> list);
*/
public static byte[] toPrimitiveArray(final ListByteRef byteListRef) {
List<? extends Byte> byteList = byteListRef.get();
@Guiorgy
Guiorgy / ReverseSeekBar.kt
Last active February 20, 2020 20:01
An Android SeekBar, that's flipped horizontally
class ReverseSeekBar : SeekBar {
constructor(context: Context) : super(context) {
init()
}
constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) {
init()
}
constructor(context: Context, attrs: AttributeSet?, defStyle: Int) : super(context, attrs, defStyle) {
init()
@Guiorgy
Guiorgy / ProgressNotificationManager.kt
Last active March 23, 2020 22:39
A NotificationManagerCompat wrapper made to simplify handling of progress notifications
import android.annotation.SuppressLint
import android.annotation.TargetApi
import android.app.Notification
import android.app.NotificationChannel
import android.content.Context
import android.os.Build
import androidx.annotation.IntDef
import androidx.annotation.RequiresApi
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
@Guiorgy
Guiorgy / ASCII_TO_GEORGIAN.sql
Last active January 31, 2024 13:27
Create an SQL function that converts ASCII characters to Georgian. (Useful for storing Georgian strings in the database using the ASCII encoding to save space and improve compatibility)
CREATE FUNCTION [dbo].[ASCII_TO_GEORGIAN] (@ascii nvarchar(max))
RETURNS NVARCHAR(MAX)
AS
BEGIN
DECLARE @ret NVARCHAR(max);
SET @ret =
REPLACE(
REPLACE(
REPLACE(
REPLACE(