Skip to content

Commit

Permalink
ΔOS v0.8-alpha (#71)
Browse files Browse the repository at this point in the history
* mv: static -> var

* mv: var/data,doc -> root

* fix: data

* update: Deosfile

* update: deosrc

* fix-spacing: Gulpfile

* init: terminal

* rm: hyper

* init: terminal

* init: yubikey

* mv: src/freebird -> app/freebird

* init: blockstack

* add: app/gtiles

* init: electrum,picocoin

* add: etc/zerotier,blockstack

* mv: blockstack tests

* add: git large file support

* fix-test: blockstack

* add: obj

* add: zerotier

* init: bittorrent

* rm: bittorrent

* add: bittorrent

* add: web,two1,electrum

* rm: web

* add: web

* add: bitcoin
  • Loading branch information
DeSantis authored Dec 18, 2016
1 parent fbde6c1 commit 46a76d5
Show file tree
Hide file tree
Showing 160 changed files with 2,757 additions and 40 deletions.
20 changes: 10 additions & 10 deletions .deosrc
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,25 @@ include host/common.mk
BASEDIR:=$(CURDIR)
BIN:=$(BASEDIR)/bin

DeOS_YUBIKEY_GIT_REPO:=https://github.com/scumjr/yubikeyedup.git
DeOS_YUBIKEY_PATH_DB:=$(BASEDIR)/var/data/yubikeys.sqlite3
DeOS_YUBIKEY_GIT_REPO:=https://github.com/scumjr/yubikeyedup
DeOS_YUBIKEY_PATH_DB:=$(BASEDIR)/data/private/yubikeys.sqlite3
DeOS_YUBIKEY_PATH_SRC:=$(BASEDIR)/dev/yubikey/src
DeOS_YUBIKEY_PATH_TOOLS:=$(BASEDIR)/dev/yubikey/tools

DeOS_YUBIKEY_APP:=deos
DeOS_YUBIKEY_USER:=atd@gmx.it

export DeOS_BOOT_ARGS_BITCOIN:=-b
export DeOS_BOOT_ARGS_BLOCKSTACK:=-d
export DeOS_BOOT_ARGS_BOOTSTRAP:=-a test
export DeOS_BOOT_ARGS_BITCOIN:=-c bitcoind
export DeOS_BOOT_ARGS_BLOCKSTACK:=-c blockstack
export DeOS_BOOT_ARGS_BOOTSTRAP:=-c init
export DeOS_BOOT_ARGS_DOCKER:=-f
export DeOS_BOOT_ARGS_NGINX:=-e
export DeOS_BOOT_ARGS_PYTHON:=-c
export DeOS_BOOT_ARGS_PYTHON:=-c python
export DeOS_BOOT_PATH:=/deos/boot
export DeOS_BOOT_SCRIPT:=./src/build.sh
export DeOS_BUILD_BITCOIN:=$(TRUE)
export DeOS_BUILD_BLOCKSTACK:=$(FALSE)
export DeOS_BUILD_DOCKER:=$(FALSE)
export DeOS_BUILD_BLOCKSTACK:=$(TRUE)
export DeOS_BUILD_DOCKER:=$(TRUE)
export DeOS_BUILD_NGINX:=$(TRUE)
export DeOS_BUILD_PYTHON:=$(TRUE)
export DeOS_CONFIG_DEBUG:=$(FALSE)
Expand Down Expand Up @@ -54,7 +54,7 @@ endif
export BUILDDOCKER:=$(FALSE)
export BUILDJS:=$(FALSE)
export BUILDNGINX:=$(FALSE)
export BUILDZT:=$(FALSE)
export BUILDZT:=$(TRUE)
export BUILDNOTEBOOK:=$(FALSE)
export DeOS_FILESYNC:=$(TRUE)

Expand All @@ -64,7 +64,7 @@ DEOS:=$(BASEDIR)/bin/deos
LIB:=$(BASEDIR)/lib
PRINTM:=$(BASEDIR)/.deos/bin/darwin/printm
SRC:=$(BASEDIR)/src
STATIC:=$(BASEDIR)/static
STATIC:=$(BASEDIR)/var
VENV:=$(BASEDIR)/.deos/venv

export VM_BASHRC:=/home/$(DeOS_VM_USER)/.bashrc
Expand Down
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
* text=auto
*.log filter=lfs diff=lfs merge=lfs -text
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,11 @@ app/index.min.html
bin/logic
bin/main*
npm-debug.log
test/main.py
yarn-error.log

#[folders]
static/build/
var/build/
node_modules/

#[wildcards]
Expand Down
132 changes: 132 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
[submodule "app/terminal"]
path = app/terminal
url = https://github.com/zeit/hyper.git
[submodule "dev/yubikey"]
path = dev/yubikey
url = https://github.com/scumjr/yubikeyedup.git
[submodule "ext/blockstack/blockstack-cli"]
path = ext/blockstack/blockstack-cli
url = https://github.com/blockstack/blockstack-cli.git
[submodule "ext/blockstack/dns-zone-file-py"]
path = ext/blockstack/dns-zone-file-py
url = https://github.com/blockstack/dns-zone-file-py.git
[submodule "ext/blockstack/blockstack-profiles-py"]
path = ext/blockstack/blockstack-profiles-py
url = https://github.com/blockstack/blockstack-profiles-py.git
[submodule "ext/blockstack/virtualchain"]
path = ext/blockstack/virtualchain
url = https://github.com/blockstack/virtualchain.git
[submodule "ext/blockstack/blockstack-core"]
path = ext/blockstack/blockstack-core
url = https://github.com/blockstack/blockstack-core.git
[submodule "ext/blockstack/blockstack-files"]
path = ext/blockstack/blockstack-files
url = https://github.com/blockstack/blockstack-files.git
[submodule "ext/blockstack/blockstack-gpg"]
path = ext/blockstack/blockstack-gpg
url = https://github.com/blockstack/blockstack-gpg.git
[submodule "ext/blockstack/pybitcoin"]
path = ext/blockstack/pybitcoin
url = https://github.com/blockstack/pybitcoin.git
[submodule "ext/blockstack/keychain-manager-py"]
path = ext/blockstack/keychain-manager-py
url = https://github.com/blockstack/keychain-manager-py
[submodule "ext/blockstack/keylib-py"]
path = ext/blockstack/keylib-py
url = https://github.com/blockstack/keylib-py
[submodule "ext/bitcoin/python-bitcoinlib"]
path = ext/bitcoin/python-bitcoinlib
url = https://github.com/petertodd/python-bitcoinlib.git
[submodule "app/gitiles"]
path = app/gitiles
url = https://github.com/google/gitiles.git
[submodule "ext/bitcoin/picocoin"]
path = ext/bitcoin/picocoin
url = https://github.com/jgarzik/picocoin.git
[submodule "doc/electrum"]
path = doc/electrum
url = https://github.com/spesmilo/electrum-docs.git
[submodule "test/blockstack"]
path = test/blockstack
url = https://github.com/blockstack/blockstack-integration-tests.git
[submodule "ext/zerotier/ZeroTierOne"]
path = ext/zerotier/ZeroTierOne
url = https://github.com/zerotier/ZeroTierOne.git
[submodule "ext/zerotier/ZeroTierSDK"]
path = ext/zerotier/ZeroTierSDK
url = https://github.com/zerotier/ZeroTierSDK.git
[submodule "ext/bittorrent/webtorrent"]
path = ext/bittorrent/webtorrent
url = https://github.com/feross/webtorrent.git
[submodule "ext/bittorrent/bittorrent-dht"]
path = ext/bittorrent/bittorrent-dht
url = https://github.com/feross/bittorrent-dht.git
[submodule "ext/bittorrent/bittorrent-peerid"]
path = ext/bittorrent/bittorrent-peerid
url = https://github.com/fisch0920/bittorrent-peerid.git
[submodule "ext/bittorrent/bittorrent-protocol"]
path = ext/bittorrent/bittorrent-protocol
url = https://github.com/feross/bittorrent-protocol.git
[submodule "ext/bittorrent/bittorrent-tracker"]
path = ext/bittorrent/bittorrent-tracker
url = https://github.com/feross/bittorrent-tracker.git
[submodule "ext/bittorrent/create-torrent"]
path = ext/bittorrent/create-torrent
url = https://github.com/feross/create-torrent.git
[submodule "ext/bittorrent/magnet-uri"]
path = ext/bittorrent/magnet-uri
url = https://github.com/feross/magnet-uri.git
[submodule "ext/bittorrent/parse-torrent"]
path = ext/bittorrent/parse-torrent
url = https://github.com/feross/parse-torrent.git
[submodule "ext/bittorrent/render-media"]
path = ext/bittorrent/render-media
url = https://github.com/feross/render-media.git
[submodule "ext/bittorrent/torrent-discovery"]
path = ext/bittorrent/torrent-discovery
url = https://github.com/feross/torrent-discovery.git
[submodule "ext/bittorrent/ut_metadata"]
path = ext/bittorrent/ut_metadata
url = https://github.com/feross/ut_metadata.git
[submodule "ext/bittorrent/ut_pex"]
path = ext/bittorrent/ut_pex
url = https://github.com/fisch0920/ut_pex.git
[submodule "ext/bittorrent/GitTorrent"]
path = ext/bittorrent/GitTorrent
url = https://github.com/cjb/GitTorrent.git
[submodule "ext/bittorrent/ut_gittorrent"]
path = ext/bittorrent/ut_gittorrent
url = https://github.com/cjb/ut_gittorrent.git
[submodule "ext/bitcoin/electrum"]
path = ext/bitcoin/electrum
url = https://github.com/spesmilo/electrum.git
[submodule "ext/bitcoin/electrum-server"]
path = ext/bitcoin/electrum-server
url = https://github.com/spesmilo/electrum-server.git
[submodule "ext/bitcoin/two1-python"]
path = ext/bitcoin/two1-python
url = https://github.com/21dotco/two1-python.git
[submodule "ext/bitcoin/two1-docker"]
path = ext/bitcoin/two1-docker
url = https://github.com/21dotco/two1-docker.git
[submodule "ext/bitcoin/two1-sell-boilerplate"]
path = ext/bitcoin/two1-sell-boilerplate
url = https://github.com/21dotco/two1-sell-boilerplate.git
[submodule "ext/web"]
path = ext/web
url = https://github.com/webpy/webpy.git
[submodule "ext/bitcoin/bitcoin"]
path = ext/bitcoin/bitcoin
url = https://github.com/bitcoin/bitcoin.git
[submodule "ext/bitcoin/libblkmaker"]
path = ext/bitcoin/libblkmaker
url = https://github.com/bitcoin/libblkmaker.git
[submodule "ext/bitcoin/libbase58"]
path = ext/bitcoin/libbase58
url = https://github.com/bitcoin/libbase58.git
[submodule "doc/bitcoin/bips"]
path = doc/bitcoin/bips
url = https://github.com/bitcoin/bips.git
[submodule "doc/bitcoin/QA"]
path = doc/bitcoin/QA
url = https://github.com/bitcoin/QA.git
2 changes: 0 additions & 2 deletions Deosfile
Original file line number Diff line number Diff line change
Expand Up @@ -158,8 +158,6 @@ Makefile:
else: >
@(echo "'make $@' isn't yet supported on $(DeOS_HOST_OS).")

###

.editorconfig:
root: true
_*:
Expand Down
6 changes: 3 additions & 3 deletions Gulpfile.babel.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ import { paths, toClean, toLint } from './src/descript/config.paths';
gulp.task('clean', () => del(toClean));

gulp.task('lint', ['clean'], () => gulp.src(toLint)
.pipe(eslint())
.pipe(eslint.format())
.pipe(flow({ abort: false })));
.pipe(eslint())
.pipe(eslint.format())
.pipe(flow({ abort: false })));

gulp.task('build', ['lint'], () => {
gulp.src(paths.files.client.js.all)
Expand Down
10 changes: 5 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ include .deosrc

all: chmod
ifeq ($(DeOS_HOST_OS),$(IS_MAC))
@(if [[ -z "$(x)" ]]; then ($(MAKE) install); fi)
@(if [[ -n "$(x)" ]]; then ($(PRINTM) cyan $@ start); fi)
if [ "$(x)" = "all" ]; then ($(MAKE) build)\
else [ "$(x)" = "run" ] && ($(MAKE) wallet) || ($(MAKE) x=all); fi
@(if [[ -n "$(x)" ]]; then ($(PRINTM) cyan $@ stop); fi)
@(if [[ -z "$(x)" ]]; then ($(MAKE) install); fi)
@(if [[ -n "$(x)" ]]; then ($(PRINTM) cyan $@ start); fi)
if [ "$(x)" = "all" ]; then ($(MAKE) build)\
else [ "$(x)" = "run" ] && ($(MAKE) wallet) || ($(MAKE) x=all); fi
@(if [[ -n "$(x)" ]]; then ($(PRINTM) cyan $@ stop); fi)
endif

install:
Expand Down
8 changes: 5 additions & 3 deletions Vagrantfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :
require './src/plugins/reboot'
require './plugin/vagrant/reboot'
Vagrant.configure('2') do |config|
config.vm.define :DeVM do |t| end
config.vm.box = ENV['DeOS_VM_BOX']
Expand All @@ -24,11 +24,11 @@ Vagrant.configure('2') do |config|
config.vm.synced_folder '.', '/vagrant',
disabled: true
config.vm.synced_folder '.', ENV['DeOS_VM_PATH']
config.vm.synced_folder '.zerotier', ENV['DeOS_VM_PATH_ZT'],
config.vm.synced_folder 'etc/zerotier', ENV['DeOS_VM_PATH_ZT'],
owner: 'root',
group: 'root',
create: true
config.vm.synced_folder '.blockstack', '/home/vagrant/.blockstack',
config.vm.synced_folder 'etc/blockstack', '/home/vagrant/.blockstack',
owner: 'vagrant',
group: 'vagrant',
create: true
Expand Down Expand Up @@ -56,6 +56,8 @@ Vagrant.configure('2') do |config|
if ENV['BUILDZT'] != '0'
config.vm.provision :shell,
env: {
'DeOS_BOOT_PATH' => ENV['DeOS_BOOT_PATH'],
'DeOS_BOOT_DEBUG' => ENV['DeOS_BOOT_DEBUG'],
'DeOS_CMD_APT_UPGRADE' => ENV['DeOS_CMD_APT_UPGRADE'],
'ZT_GPG_KEY' => ENV['ZT_GPG_KEY'],
'ZT_INSTALL' => ENV['ZT_INSTALL'],
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
1 change: 1 addition & 0 deletions app/gitiles
Submodule gitiles added at db3577
1 change: 1 addition & 0 deletions app/terminal
Submodule terminal added at 5d1533
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Empty file added dev/pyboard/boot.py
Empty file.
Empty file added dev/pyboard/main.py
Empty file.
1 change: 1 addition & 0 deletions dev/yubikey
Submodule yubikey added at 00520d
1 change: 1 addition & 0 deletions doc/bitcoin/QA
Submodule QA added at dc0369
1 change: 1 addition & 0 deletions doc/bitcoin/bips
Submodule bips added at d2a8fb
46 changes: 46 additions & 0 deletions doc/electrum/2fa.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
Two Factor Authentication
=========================

Electrum offers two-factor authenticated wallets, with a remote server
acting to co-sign transactions, adding another level of security in
the event of your computer being compromised.

The remote server in question is a service offered by TrustedCoin.
Here is a guide_ on how it works.

.. _guide: https://api.trustedcoin.com/#/electrum-help

Creating a Wallet
-----------------

.. image:: png/Create_2fa.png


.. image:: png/TrustedCoin.png


Restoring from seed
-------------------

Even if TrustedCoin is compromised or taken offline, your coins are
secure as long as you still have the seed of your wallet. Your seed
contains two master private keys in a 2-of-3 security scheme. In
addition, the third master public key can be derived from your seed,
ensuring that your wallet addresses can be restored. In order to
restore your wallet from seed, select "wallet with two factor
authentication", as this tells Electrum to use this special variety of
seed for restoring your wallet.

.. image:: png/Restore_2fa.png


Note: The "restore" option should be used only if you no longer want
to use TrustedCoin, or if there is a problem with the service. Once
you have restored your wallet in this way, two of three factors are on
your machine, negating the special protection of this type of
wallet.





21 changes: 21 additions & 0 deletions doc/electrum/LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
The MIT License (MIT)

Copyright (c) 2015 Thomas Voegtlin

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Loading

0 comments on commit 46a76d5

Please sign in to comment.