Skip to content

Instantly share code, notes, and snippets.

View ImanMousavi's full-sized avatar

Iman ImanMousavi

View GitHub Profile
@ImanMousavi
ImanMousavi / Presale.sol
Created November 8, 2021 06:25
ERC20 Presale token
/**
*Submitted for verification at BscScan.com on 2021-05-18
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.2;
abstract contract Context {
@ImanMousavi
ImanMousavi / Wallet.sol
Created September 11, 2021 08:05
Ethereum Wallet Ðapp
//sol Wallet
// Multi-sig, daily-limited account proxy/wallet.
// @authors:
// Gav Wood <g@ethdev.com>
// inheritable "property" contract that enables methods to be protected by requiring the acquiescence of either a
// single, or, crucially, each of a number of, designated owners.
// usage:
// use modifiers onlyowner (just own owned) or onlymanyowners(hash), whereby the same hash must be provided by
// some number (specified in constructor) of the set of owners (specified in the constructor, modifiable) before the
// interior is executed.
sudo docker run -d \
--name watchtower \
-e WATCHTOWER_NOTIFICATIONS_LEVEL=info \
-e WATCHTOWER_NOTIFICATIONS=slack \
-e WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL="hook-url" \
-v ~/.docker/config.json:/config.json \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower -i 60
@ImanMousavi
ImanMousavi / neovim_install.sh
Created March 15, 2021 19:40 — forked from backroot/neovim_install.sh
neovim install for centos 7
# https://github.com/neovim/neovim/wiki/Installing-Neovim
yum -y install epel-release
curl -o /etc/yum.repos.d/dperson-neovim-epel-7.repo https://copr.fedorainfracloud.org/coprs/dperson/neovim/repo/epel-7/dperson-neovim-epel-7.repo
yum -y install neovim --enablerepo=epel
@ImanMousavi
ImanMousavi / setup.sh
Last active June 7, 2021 04:24
Setup Debian machine for docker-compose
#!/bin/bash -x
COMPOSE_VERSION="1.29.1"
COMPOSE_URL="https://github.com/docker/compose/releases/download/$COMPOSE_VERSION/docker-compose-$(uname -s)-$(uname -m)"
# Opendax bootstrap script
install_core() {
sudo bash <<EOS
apt-get update
apt-get remove -y --purge unscd
FROM adoptopenjdk:8-jre-hotspot
WORKDIR /home/wallet-cli
RUN set -o errexit -o nounset \
&& apt-get update \
&& apt-get -y install wget \
&& wget https://github.com/tronprotocol/wallet-cli/releases/download/wallet-cli-4.1.0/wallet-cli.jar
ENTRYPOINT ["java", "-jar", "wallet-cli.jar"]
pragma solidity ^0.6.0;
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function allowance(address owner, address spender) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function approve(address spender, uint256 amount) external returns (bool);
@ImanMousavi
ImanMousavi / Donation.sol
Created October 8, 2020 08:04
Donation with smart contract (solidity) [You can use ETH, TRX, ...]
pragma solidity >=0.5.1 <0.6.0;
library SafeMath {
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
assert(c / a == b);
@ImanMousavi
ImanMousavi / Upgrade vim
Created September 6, 2020 05:46 — forked from yevrah/Upgrade vim
Update to Vim8 on Centos 7
################################################################################
# Method 1: Install using rpm packages (credit to DarkMukke)
#
rpm -Uvh http://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el7.noarch.rpm
rpm --import http://mirror.ghettoforge.org/distributions/gf/RPM-GPG-KEY-gf.el7
# WARNING: removing vim-minimal uninstalls `sudo` if you skip the second step
# make sure to at least run `yum install sudo`
yum -y remove vim-minimal vim-common vim-enhanced
#!/bin/bash
# Download and install command
# wget -qO- https://gist.github.com/zer0beat/2f3aa1e81d9bedb0355a46e59ffcea34/raw | VIM_VERSION=8.2.1551 bash
################################################################################
# Method 1: Install using rpm packages (credit to DarkMukke)