Browse Source

reupload

master
Victor Giers 1 year ago
commit
d72843704a
100 changed files with 5099 additions and 0 deletions
  1. 64
    0
      README.md
  2. 10
    0
      airootfs/etc/dbus-1/system.d/pulseaudio.conf
  3. 0
    0
      airootfs/etc/fstab
  4. 1
    0
      airootfs/etc/hostname
  5. 0
    0
      airootfs/etc/issue
  6. 1
    0
      airootfs/etc/locale.conf
  7. 0
    0
      airootfs/etc/machine-id
  8. 7
    0
      airootfs/etc/modprobe.d/broadcom-wl.conf
  9. 1
    0
      airootfs/etc/sysctl.d/20-quiet-printk.conf
  10. 26
    0
      airootfs/etc/systemd/scripts/choose-mirror
  11. 10
    0
      airootfs/etc/systemd/system/choose-mirror.service
  12. 8
    0
      airootfs/etc/systemd/system/etc-pacman.d-gnupg.mount
  13. 3
    0
      airootfs/etc/systemd/system/getty@tty1.service.d/autologin.conf
  14. 15
    0
      airootfs/etc/systemd/system/pacman-init.service
  15. 1
    0
      airootfs/etc/udev/rules.d/81-dhcpcd.rules
  16. BIN
      airootfs/root/.config/dconf/user
  17. 23
    0
      airootfs/root/.config/openbox/autostart
  18. 12
    0
      airootfs/root/.config/openbox/environment
  19. 394
    0
      airootfs/root/.config/openbox/menu.xml
  20. 893
    0
      airootfs/root/.config/openbox/rc.bak.xml
  21. 348
    0
      airootfs/root/.config/openbox/rc.xml
  22. 1
    0
      airootfs/root/.gnupg/crls.d/DIR.txt
  23. BIN
      airootfs/root/.gnupg/pubring.kbx
  24. BIN
      airootfs/root/.gnupg/pubring.kbx~
  25. BIN
      airootfs/root/.gnupg/trustdb.gpg
  26. 0
    0
      airootfs/root/.tor-browser/LOG
  27. 1
    0
      airootfs/root/.tor-browser/VERSION
  28. BIN
      airootfs/root/.tor-browser/app/Browser/.cache/event-sound-cache.tdb.92d48d120f5641c58cbef0260b495d9f.x86_64-pc-linux-gnu
  29. BIN
      airootfs/root/.tor-browser/app/Browser/.cache/fontconfig/8dda681e-3b85-4fda-b520-2e8de88fe9cf-le64.cache-7
  30. 4
    0
      airootfs/root/.tor-browser/app/Browser/.cache/fontconfig/CACHEDIR.TAG
  31. 2
    0
      airootfs/root/.tor-browser/app/Browser/.config/gtk-3.0/settings.ini
  32. 46
    0
      airootfs/root/.tor-browser/app/Browser/.local/share/recently-used.xbel
  33. 7
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/native-messaging-hosts/shutdown.json
  34. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown.xpi
  35. 5
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/background.js
  36. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-16.png
  37. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-32.png
  38. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-48.png
  39. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-96.png
  40. 28
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/manifest.json
  41. 64
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/shutdown.bak.py
  42. 20
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/shutdown.py
  43. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/7hkkv0nc.default-1542542034744/.startup-incomplete
  44. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/9uitowp3.default-1542541582642/.startup-incomplete
  45. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/a8t4ehp8.default-1542542120847/.startup-incomplete
  46. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/f4tffe09.default-1542542068929/.startup-incomplete
  47. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/i63wsalj.default-1542541551403/.startup-incomplete
  48. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/ktellme7.default-1542541650313/.startup-incomplete
  49. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/m32mqcyy.default-1542542380772/.startup-incomplete
  50. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/mpjn4nmh.default-1542542356428/.startup-incomplete
  51. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/tbqr95vz.default-1542542162153/.startup-incomplete
  52. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/Caches/zo6fge2o.default-1542541607427/.startup-incomplete
  53. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/.parentlock
  54. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/.startup-incomplete
  55. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/AlternateServices.txt
  56. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/SecurityPreloadState.txt
  57. 3
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/SiteSecurityServiceState.txt
  58. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/TRRBlacklist.txt
  59. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/addonStartup.json.lz4
  60. 1
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/addons.json
  61. 2861
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/blocklist.xml
  62. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/bookmarkbackups/bookmarks-2018-11-23_10_bBWr24uqhxErmArCqi4GOw==.jsonlz4
  63. 17
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/bookmarks.html
  64. 1
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/browser-extension-data/https-everywhere-eff@eff.org/storage.js
  65. 1
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/browser-extension-data/{73a6fe31-595d-460b-a920-fcc0f8843232}/storage.js
  66. 41
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome/userChrome.css
  67. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/.parentlock
  68. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/.startup-incomplete
  69. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/addonStartup.json.lz4
  70. 6
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/compatibility.ini
  71. 1
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/containers.json
  72. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/content-prefs.sqlite
  73. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/cookies.sqlite
  74. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/cookies.sqlite-shm
  75. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/cookies.sqlite-wal
  76. 1
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/extensions.json
  77. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/favicons.sqlite
  78. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/favicons.sqlite-shm
  79. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/favicons.sqlite-wal
  80. 1
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/handlers.json
  81. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/places.sqlite
  82. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/places.sqlite-shm
  83. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/places.sqlite-wal
  84. 170
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/prefs.js
  85. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-block-simple.pset
  86. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-block-simple.sbstore
  87. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-harmful-simple.pset
  88. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-harmful-simple.sbstore
  89. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-malware-simple.pset
  90. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-malware-simple.sbstore
  91. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-phish-simple.pset
  92. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-phish-simple.sbstore
  93. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-track-simple.pset
  94. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-track-simple.sbstore
  95. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-trackwhite-simple.pset
  96. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-trackwhite-simple.sbstore
  97. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-unwanted-simple.pset
  98. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/safebrowsing/test-unwanted-simple.sbstore
  99. BIN
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/search.json.mozlz4
  100. 0
    0
      airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/profile.default/chrome_debugger_profile/sessionCheckpoints.json

+ 64
- 0
README.md View File

@@ -0,0 +1,64 @@
deprOS
======
**"Depression Operating System"** or **"Depressed Operating System"** or **"Depressing Operating System"**

_Status: **release**


**About**

This repo contains the configuration files for archiso to build deprOS.
deprOS is a live OS that is made for browsing the internet via Tor Browser.
It comes with openbox windowmanager giving the user a reconfigured version of tor-browser in fullscreen.

You could turn this into a practical Tor-Browser live OS by reseting userChrome.css, rc.xml, torbutton@torproject.org.xpi, tor-launcher@torproject.org.xpi and prefs.js. That's not what I intended this software for, but whatever - copyleft

A website local website emulates a desktop environment.
You can download the latest build here: [link](https://www.victorgiers.com/deprOS/iso/deprOS-build42-x86_64.iso)

**Requirements**

To build an Arch based custom live OS all you need is a system with archiso and pacman.


**Devlog**

deprOS was first built on a slightly reconfigured installation of Arch Linux as distributed on 2018.11.01 (archlinux-2018.11.01-x86_64.iso) with the kernel taken as is.
We then used archiso to recreate it as live-OS.
Arch is good because of its conveniences and hardware support.
The Arch installation can still use some slimming down, it is still slightly bigger than 700mb.
After booting deprOS it automatically logs in as root (root is the only user) and gives the user a shell-based WiFi-selection (wifi-menu) if internet connection is not present.
After internet connection was established, deprOS starts xinit with an openbox-session which has the tor-browser in its autostart, directing it to an index.html file present in file:///root.index.html, which contains the website that is the "desktop".
The browser is slightly reconfigured, it comes with a custom addon (deprOS-shutdown to shut down the OS from the browser) and custom design which tries to hide as much as possible from the user.
Changes were made to tor-launcher and tor-button.

deprOS comes with Arch's universal video drivers xf86-video-vesa and pulseaudio.
It's a bit of a pain to get pulseaudio running as root, but not having a user is part of the concept.

Steps to reproduce building deprOS in a nutshell:
- install archiso
- copy releng example config file
- run build.sh

...


**ToDo**
Soon:
- concept how to handle keyboard (remove all keyshortcuts from system or disable entirely? don't want user to browse sites which are not depressing)
- finish frontend, make it dynamic for later
- keyboard layouts autodetect? wtf
- "Meh.." - Error Messages --> Locale files
- water-proof display detection (Xauthority?)


**TL;DR**

deprOS depresses you and / or your computer.
It offers as little interaction and configuration as necessary.
It's a live operating system for your computer that comes on an USB stick. If you stick it into your computer, it should boot into deprOS instead of your usual operating system.
Taking control over systems away from the user makes things easier. While gaining proportionally less control, we have access to a huge amount of more and more information.
I believe parts of these two trends are not healthy and we the people have not found good ways of dealing with these parts yet. Or is it just me?
deprOS plays right into the vicious cycle of being informationally overfed and using dumb (aka smart) and restrictious interfaces. This is satire.
It also plays with the spoiled gluttony of having food, drugs, communication, sex and even intel at the very tip of your finger. All you have to do is click.


+ 10
- 0
airootfs/etc/dbus-1/system.d/pulseaudio.conf View File

@@ -0,0 +1,10 @@
<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="pulse">
<allow own="org.pulseaudio.Server"/>
<allow send_destination="org.pulseaudio.Server"/>
<allow receive_sender="org.pulseaudio.Server"/>
</policy>
</busconfig>

+ 0
- 0
airootfs/etc/fstab View File


+ 1
- 0
airootfs/etc/hostname View File

@@ -0,0 +1 @@
archiso

+ 0
- 0
airootfs/etc/issue View File


+ 1
- 0
airootfs/etc/locale.conf View File

@@ -0,0 +1 @@
LANG=en_US.UTF-8

+ 0
- 0
airootfs/etc/machine-id View File


+ 7
- 0
airootfs/etc/modprobe.d/broadcom-wl.conf View File

@@ -0,0 +1,7 @@
# The broadcom-wl package requires some modules to be disabled in order to use
# wl. Since the ISO image needs to cover many hardware cases, this file
# overrides the default blacklist in /usr/lib/modprobe.d/
#
# If you need to use wl, you may need to delete this file, then `rmmod` any
# already-loaded modules that are now blacklisted before proceeding to modprobe
# wl itself.

+ 1
- 0
airootfs/etc/sysctl.d/20-quiet-printk.conf View File

@@ -0,0 +1 @@
kernel.printk = 3 3 3 3

+ 26
- 0
airootfs/etc/systemd/scripts/choose-mirror View File

@@ -0,0 +1,26 @@
#!/bin/bash

get_cmdline() {
local param
for param in $(< /proc/cmdline); do
case "${param}" in
$1=*) echo "${param##*=}";
return 0
;;
esac
done
}

mirror=$(get_cmdline mirror)
[[ $mirror = auto ]] && mirror=$(get_cmdline archiso_http_srv)
[[ $mirror ]] || exit 0

mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.orig
cat >/etc/pacman.d/mirrorlist << EOF
#
# Arch Linux repository mirrorlist
# Generated by archiso
#

Server = ${mirror%%/}/\$repo/os/\$arch
EOF

+ 10
- 0
airootfs/etc/systemd/system/choose-mirror.service View File

@@ -0,0 +1,10 @@
[Unit]
Description=Choose mirror from the kernel command line
ConditionKernelCommandLine=mirror

[Service]
Type=oneshot
ExecStart=/etc/systemd/scripts/choose-mirror

[Install]
WantedBy=multi-user.target

+ 8
- 0
airootfs/etc/systemd/system/etc-pacman.d-gnupg.mount View File

@@ -0,0 +1,8 @@
[Unit]
Description=Temporary /etc/pacman.d/gnupg directory

[Mount]
What=tmpfs
Where=/etc/pacman.d/gnupg
Type=tmpfs
Options=mode=0755

+ 3
- 0
airootfs/etc/systemd/system/getty@tty1.service.d/autologin.conf View File

@@ -0,0 +1,3 @@
[Service]
ExecStart=
ExecStart=-/sbin/agetty --skip-login --noissue --autologin root %I 38400 linux

+ 15
- 0
airootfs/etc/systemd/system/pacman-init.service View File

@@ -0,0 +1,15 @@
[Unit]
Description=Initializes Pacman keyring
Wants=haveged.service
After=haveged.service
Requires=etc-pacman.d-gnupg.mount
After=etc-pacman.d-gnupg.mount

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/pacman-key --init
ExecStart=/usr/bin/pacman-key --populate archlinux

[Install]
WantedBy=multi-user.target

+ 1
- 0
airootfs/etc/udev/rules.d/81-dhcpcd.rules View File

@@ -0,0 +1 @@
ACTION=="add", SUBSYSTEM=="net", ENV{INTERFACE}=="en*|eth*", ENV{SYSTEMD_WANTS}="dhcpcd@$name.service"

BIN
airootfs/root/.config/dconf/user View File


+ 23
- 0
airootfs/root/.config/openbox/autostart View File

@@ -0,0 +1,23 @@
##
# These things are run when an Openbox X Session is started.
# You may place a similar script in $HOME/.config/openbox/autostart
# to run user-specific things.
#

# If you want to use GNOME config tools...
#
#if test -x /usr/lib/openbox/gnome-settings-daemon >/dev/null; then
# /usr/lib/openbox/gnome-settings-daemon &
#elif which gnome-settings-daemon >/dev/null 2>&1; then
# gnome-settings-daemon &
#fi

# If you want to use XFCE config tools...
#
#xfce-mcs-manager &

xset -b &
xsetroot -solid "#000000" &
setxkmap de &
/root/.tor-browser/app/Browser/start-tor-browser file:///root/index.html &
#/root/.tor-browser/app/Browser/start-tor-browser about:config &

+ 12
- 0
airootfs/root/.config/openbox/environment View File

@@ -0,0 +1,12 @@
#
# Set system-wide environment variables here for Openbox
# User-specific variables should be placed in $HOME/.config/openbox/environment
#

export PATH=$HOME/bin:$PATH

# To set your language for displaying messages and time/date formats, use the following:
LANG=de_DE.UTF8

# To set your keyboard layout, you need to modify your X config:
# http://www.google.com/search?q=how+to+set+keyboard+layout+xorg

+ 394
- 0
airootfs/root/.config/openbox/menu.xml View File

@@ -0,0 +1,394 @@
<?xml version="1.0" encoding="UTF-8"?>

<openbox_menu xmlns="http://openbox.org/3.4/menu">

<menu id="apps-accessories-menu" label="Accessories">
<item label="Calculator">
<action name="Execute">
<command>gnome-calculator</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Character Map">
<action name="Execute">
<command>gnome-character-map</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Ark File Archiver">
<action name="Execute">
<command>ark</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
</menu>

<menu id="apps-editors-menu" label="Editors">
<item label="GVim">
<action name="Execute">
<command>gvim</command>
<startupnotify>
<enabled>yes</enabled>
<wmclass>GVim</wmclass>
</startupnotify>
</action>
</item>
<item label="Emacs">
<action name="Execute">
<command>emacs</command>
<startupnotify>
<enabled>yes</enabled>
<wmclass>Emacs</wmclass>
</startupnotify>
</action>
</item>
<item label="GEdit">
<action name="Execute">
<command>gedit</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Kate">
<action name="Execute">
<command>kate</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Kwrite">
<action name="Execute">
<command>kwrite</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
</menu>

<menu id="apps-term-menu" label="Terminals">
<item label="Rxvt Unicode">
<action name="Execute">
<command>urxvt</command>
</action>
</item>
<item label="Gnome Terminal">
<action name="Execute">
<command>gnome-terminal</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Xfce Terminal">
<action name="Execute">
<command>xfce4-terminal</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Konsole">
<action name="Execute">
<command>konsole</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Xterm">
<action name="Execute"><command>xterm</command></action>
</item>
</menu>

<menu id="apps-net-menu" label="Internet">
<item label="Firefox">
<action name="Execute">
<command>firefox</command>
<startupnotify>
<enabled>yes</enabled>
<wmclass>Firefox</wmclass>
</startupnotify>
</action>
</item>
<item label="Opera">
<action name="Execute">
<command>opera</command>
<startupnotify>
<enabled>yes</enabled>
<wmclass>Opera</wmclass>
</startupnotify>
</action>
</item>
<item label="Konqueror">
<action name="Execute">
<command>konqueror</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Epiphany">
<action name="Execute">
<command>epiphany</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Pidgin Instant Messenger">
<action name="Execute">
<command>pidgin</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Kopete Instant Messenger">
<action name="Execute">
<command>kopete</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="XChat">
<action name="Execute">
<command>xchat</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
</menu>

<menu id="apps-office-menu" label="Office">
<item label="OpenOffice Base">
<action name="Execute">
<command>ooffice -base</command>
</action>
</item>
<item label="OpenOffice Calc">
<action name="Execute">
<command>ooffice -calc</command>
</action>
</item>
<item label="OpenOffice Draw">
<action name="Execute">
<command>ooffice -draw</command>
</action>
</item>
<item label="OpenOffice Impress">
<action name="Execute">
<command>ooffice -impress</command>
</action>
</item>
<item label="OpenOffice Math">
<action name="Execute">
<command>ooffice -math</command>
</action>
</item>
<item label="OpenOffice Printer Administration">
<action name="Execute">
<command>ooffice-printeradmin</command>
</action>
</item>
<item label="OpenOffice Writer">
<action name="Execute">
<command>ooffice -writer</command>
</action>
</item>
</menu>

<menu id="apps-multimedia-menu" label="Multimedia">
<item label="Amarok">
<action name="Execute">
<command>amarok</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Rhythmbox">
<action name="Execute">
<command>rhythmbox</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="K3b">
<action name="Execute">
<command>k3b</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="MPlayer">
<action name="Execute">
<command>gmplayer</command>
<startupnotify>
<enabled>yes</enabled>
<wmclass>MPlayer</wmclass>
</startupnotify>
</action>
</item>
<item label="Totem">
<action name="Execute">
<command>totem</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
</menu>

<menu id="apps-fileman-menu" label="File Managers">
<item label="Nautilus">
<action name="Execute">
<command>nautilus --no-desktop --browser</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Thunar">
<action name="Execute">
<command>Thunar</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="KDE File Manager">
<action name="Execute">
<command>kfmclient openURL ~</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Rox">
<action name="Execute">
<command>rox</command>
<startupnotify>
<enabled>yes</enabled>
<wmclass>ROX-Filer</wmclass>
</startupnotify>
</action>
</item>
<item label="PCMan File Manager">
<action name="Execute">
<command>pcmanfm</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
</menu>

<menu id="apps-graphics-menu" label="Graphics">
<item label="Gimp">
<action name="Execute">
<command>gimp</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Gwenview">
<action name="Execute">
<command>gwenview</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Dia Diagram Editor">
<action name="Execute">
<command>dia</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
<item label="Inkscape">
<action name="Execute">
<command>inkscape</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>
</menu>

<menu id="system-menu" label="System">
<item label="Openbox Configuration Manager">
<action name="Execute">
<command>obconf</command>
<startupnotify><enabled>yes</enabled></startupnotify>
</action>
</item>
<item label="Gnome Control Center">
<action name="Execute">
<command>gnome-control-center</command>
<startupnotify><enabled>yes</enabled></startupnotify>
</action>
</item>
<item label="KDE Control Center">
<action name="Execute">
<command>kcontrol</command>
<startupnotify><enabled>yes</enabled></startupnotify>
</action>
</item>
<item label="Xfce Settings">
<action name="Execute">
<command>xfce-setting-show</command>
<startupnotify><enabled>yes</enabled></startupnotify>
</action>
</item>
<item label="Manage Cups Printers">
<action name="Execute">
<command>xdg-open http://localhost:631/</command>
<startupnotify>
<enabled>no</enabled>
<icon>cups</icon>
</startupnotify>
</action>
</item>
<separator />
<item label="Reconfigure Openbox">
<action name="Reconfigure" />
</item>
</menu>

<menu id="root-menu" label="Openbox 3">
<separator label="Applications" />
<menu id="apps-accessories-menu"/>
<menu id="apps-editors-menu"/>
<menu id="apps-graphics-menu"/>
<menu id="apps-net-menu"/>
<menu id="apps-office-menu"/>
<menu id="apps-multimedia-menu"/>
<menu id="apps-term-menu"/>
<menu id="apps-fileman-menu"/>
<separator label="System" />
<menu id="system-menu"/>
<separator />
<item label="Log Out">
<action name="Exit">
<prompt>yes</prompt>
</action>
</item>
</menu>

</openbox_menu>

+ 893
- 0
airootfs/root/.config/openbox/rc.bak.xml View File

@@ -0,0 +1,893 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Do not edit this file, it will be overwritten on install.
Copy the file to $HOME/.config/openbox/ instead. -->
<openbox_config xmlns="http://openbox.org/3.4/rc" xmlns:xi="http://www.w3.org/2001/XInclude">
<resistance>
<strength>10</strength>
<screen_edge_strength>20</screen_edge_strength>
</resistance>
<focus>
<focusNew>yes</focusNew>
<!-- always try to focus new windows when they appear. other rules do
apply -->
<followMouse>no</followMouse>
<!-- move focus to a window when you move the mouse into it -->
<focusLast>yes</focusLast>
<!-- focus the last used window when changing desktops, instead of the one
under the mouse pointer. when followMouse is enabled -->
<underMouse>no</underMouse>
<!-- move focus under the mouse, even when the mouse is not moving -->
<focusDelay>200</focusDelay>
<!-- when followMouse is enabled, the mouse must be inside the window for
this many milliseconds (1000 = 1 sec) before moving focus to it -->
<raiseOnFocus>no</raiseOnFocus>
<!-- when followMouse is enabled, and a window is given focus by moving the
mouse into it, also raise the window -->
</focus>
<placement>
<policy>Smart</policy>
<!-- 'Smart' or 'UnderMouse' -->
<center>yes</center>
<!-- whether to place windows in the center of the free area found or
the top left corner -->
<monitor>Primary</monitor>
<!-- with Smart placement on a multi-monitor system, try to place new windows
on: 'Any' - any monitor, 'Mouse' - where the mouse is, 'Active' - where
the active window is, 'Primary' - only on the primary monitor -->
<primaryMonitor>1</primaryMonitor>
<!-- The monitor where Openbox should place popup dialogs such as the
focus cycling popup, or the desktop switch popup. It can be an index
from 1, specifying a particular monitor. Or it can be one of the
following: 'Mouse' - where the mouse is, or
'Active' - where the active window is -->
</placement>
<theme>
<name>darknessFall</name>
<titleLayout>LIMC</titleLayout>
<!--
available characters are NDSLIMC, each can occur at most once.
N: window icon
L: window label (AKA title).
I: iconify
M: maximize
C: close
S: shade (roll up/down)
D: omnipresent (on all desktops).
-->
<keepBorder>yes</keepBorder>
<animateIconify>yes</animateIconify>
<font place="ActiveWindow">
<name>sans</name>
<size>8</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="InactiveWindow">
<name>sans</name>
<size>8</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="MenuHeader">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>normal</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="MenuItem">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>normal</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="ActiveOnScreenDisplay">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="InactiveOnScreenDisplay">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
</theme>
<desktops>
<!-- this stuff is only used at startup, pagers allow you to change them
during a session
these are default values to use when other ones are not already set
by other applications, or saved in your session
use obconf if you want to change these without having to log out
and back in -->
<number>2</number>
<firstdesk>1</firstdesk>
<names>
<!-- set names up here if you want to, like this:
<name>desktop 1</name>
<name>desktop 2</name>
-->
</names>
<popupTime>875</popupTime>
<!-- The number of milliseconds to show the popup for when switching
desktops. Set this to 0 to disable the popup. -->
</desktops>
<resize>
<drawContents>yes</drawContents>
<popupShow>Nonpixel</popupShow>
<!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) -->
<popupPosition>Center</popupPosition>
<!-- 'Center', 'Top', or 'Fixed' -->
<popupFixedPosition>
<!-- these are used if popupPosition is set to 'Fixed' -->
<x>10</x>
<!-- positive number for distance from left edge, negative number for
distance from right edge, or 'Center' -->
<y>10</y>
<!-- positive number for distance from top edge, negative number for
distance from bottom edge, or 'Center' -->
</popupFixedPosition>
</resize>
<!-- You can reserve a portion of your screen where windows will not cover when
they are maximized, or when they are initially placed.
Many programs reserve space automatically, but you can use this in other
cases. -->
<margins>
<top>0</top>
<bottom>0</bottom>
<left>0</left>
<right>0</right>
</margins>
<dock>
<position>TopLeft</position>
<!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating -->
<floatingX>0</floatingX>
<floatingY>0</floatingY>
<noStrut>no</noStrut>
<stacking>Above</stacking>
<!-- 'Above', 'Normal', or 'Below' -->
<direction>Vertical</direction>
<!-- 'Vertical' or 'Horizontal' -->
<autoHide>no</autoHide>
<hideDelay>300</hideDelay>
<!-- in milliseconds (1000 = 1 second) -->
<showDelay>300</showDelay>
<!-- in milliseconds (1000 = 1 second) -->
<moveButton>Middle</moveButton>
<!-- 'Left', 'Middle', 'Right' -->
</dock>
<keyboard>
<chainQuitKey>C-g</chainQuitKey>
<!-- Keybindings for desktop switching -->
<!-- Mostly disabled -->
<keybind key="W-A-h">
<action name="GoToDesktop">
<to>left</to>
<wrap>no</wrap>
</action>l
</keybind>
<keybind key="W-A-l">
<action name="GoToDesktop">
<to>right</to>
<wrap>no</wrap>
</action>
</keybind>
<keybind key="W-A-k">
<action name="GoToDesktop">
<to>up</to>
<wrap>no</wrap>
</action>
</keybind>
<keybind key="W-A-j">
<action name="GoToDesktop">
<to>down</to>
<wrap>no</wrap>
</action>
</keybind>
<keybind key="S-W-A-h">
<action name="SendToDesktop">
<to>left</to>
<wrap>no</wrap>
</action>
</keybind>
<keybind key="S-W-A-l">
<action name="SendToDesktop">
<to>right</to>
<wrap>no</wrap>
</action>
</keybind>
<keybind key="S-W-A-k">
<action name="SendToDesktop">
<to>up</to>
<wrap>no</wrap>
</action>
</keybind>
<keybind key="S-W-A-j">
<action name="SendToDesktop">
<to>down</to>
<wrap>no</wrap>
</action>
</keybind>
<!--<keybind key="W-F1">
<action name="GoToDesktop">
<to>1</to>
</action>
</keybind>
<keybind key="W-F2">
<action name="GoToDesktop">
<to>2</to>
</action>
</keybind>
<keybind key="W-F3">
<action name="GoToDesktop">
<to>3</to>
</action>
</keybind>
<keybind key="W-F4">
<action name="GoToDesktop">
<to>4</to>
</action>
</keybind>-->
<!--<keybind key="W-C-d">
<action name="ToggleShowDesktop"/>
</keybind>-->
<!-- Keybindings for windows -->
<keybind key="W-q">
<action name="Close"/>
</keybind>
<keybind key="A-Escape">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</keybind>
<keybind key="A-space">
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</keybind>
<!-- Keybindings for window switching -->
<keybind key="W-Tab">
<action name="NextWindow">
<finalactions>
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</finalactions>
</action>
</keybind>
<keybind key="W-S-Tab">
<action name="PreviousWindow">
<finalactions>
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</finalactions>
</action>
</keybind>
<keybind key="C-A-Tab">
<action name="NextWindow">
<panels>yes</panels>
<desktop>yes</desktop>
<finalactions>
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</finalactions>
</action>
</keybind>
<!-- Keybindings for window switching with the arrow keys -->
<keybind key="W-l">
<action name="DirectionalCycleWindows">
<direction>right</direction>
</action>
</keybind>
<keybind key="W-h">
<action name="DirectionalCycleWindows">
<direction>left</direction>
</action>
</keybind>
<keybind key="W-k">
<action name="DirectionalCycleWindows">
<direction>up</direction>
</action>
</keybind>
<keybind key="W-j">
<action name="DirectionalCycleWindows">
<direction>down</direction>
</action>
</keybind>
<!-- Keybindings for running applications -->
<!--<keybind key="W-t">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>terminator</name>
</startupnotify>
<command>terminator</command>
</action>
</keybind>-->
<!--<keybind key="W-m">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>dmenu</name>
</startupnotify>
<command>dmenu_run -fn -misc-fixed-*-*-*-*-20-200-*-*-*-*-*-* -i -nf 'gray' -sb 'dark green' -nb 'dim gray'</command>
</action>
</keybind>-->
<keybind key="W-x">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>oblogout</name>
</startupnotify>
<command>oblogout</command>
</action>
</keybind>
<!--<keybind key="W-S-4">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>gnome-screenshot</name>
</startupnotify>
<command>gnome-screenshot</command>
</action>
</keybind>-->
<keybind key="XF86MonBrightnessUp">
<action name="Execute">
<command>xbacklight +10</command>
</action>
</keybind>
<keybind key="XF86MonBrightnessDown">
<action name="Execute">
<command>xbacklight -10</command>
</action>
</keybind>
<!-- Where installing pulse-audio instead, change 'amixer set' to 'amixer -D pulse set' -->
<keybind key="XF86AudioRaiseVolume">
<action name="Execute">
<command>amixer set Master 10%+</command>
</action>
</keybind>
<!-- Where installing pulse-audio instead, change 'amixer set' to 'amixer -D pulse set' -->
<keybind key="XF86AudioLowerVolume">
<action name="Execute">
<command>amixer set Master 10%-</command>
</action>
</keybind>
<!-- Where installing pulse-audio instead, nothing needs to be changed -->
<keybind key="XF86AudioMute">
<action name="Execute">
<command>amixer set Master toggle</command>
</action>
</keybind>
<!-- Customizations -->
<!-- Window Snapping/Maximize -->
<!-- left -->
<keybind key="W-9">
<action name="UnmaximizeFull"/>
<action name="MaximizeVert"/>
<action name="MoveResizeTo">
<width>50%</width>
</action>
<action name="MoveToEdge">
<direction>west</direction>
</action>
</keybind>
<!-- upper left -->
<keybind key="W-S-9">
<action name="UnmaximizeFull"/>
<action name="MoveResizeTo">
<width>50%</width>
<height>50%</height>
</action>
<action name="MoveToEdge">
<direction>west</direction>
</action>
<action name="MoveToEdge">
<direction>north</direction>
</action>
</keybind>
<!-- lower left -->
<keybind key="W-C-9">
<action name="UnmaximizeFull"/>
<action name="MoveResizeTo">
<width>50%</width>
<height>50%</height>
</action>
<action name="MoveToEdge">
<direction>west</direction>
</action>
<action name="MoveToEdge">
<direction>south</direction>
</action>
</keybind>
<!-- right -->
<keybind key="W-0">
<action name="UnmaximizeFull"/>
<action name="MaximizeVert"/>
<action name="MoveResizeTo">
<width>50%</width>
</action>
<action name="MoveToEdge">
<direction>east</direction>
</action>
</keybind>
<!-- upper right -->
<keybind key="W-S-0">
<action name="UnmaximizeFull"/>
<action name="MoveResizeTo">
<width>50%</width>
<height>50%</height>
</action>
<action name="MoveToEdge">
<direction>east</direction>
</action>
<action name="MoveToEdge">
<direction>north</direction>
</action>
</keybind>
<!-- lower right -->
<keybind key="W-C-0">
<action name="UnmaximizeFull"/>
<action name="MoveResizeTo">
<width>50%</width>
<height>50%</height>
</action>
<action name="MoveToEdge">
<direction>east</direction>
</action>
<action name="MoveToEdge">
<direction>south</direction>
</action>
</keybind>
<!-- toggle maximize -->
<keybind key="W-Return">
<action name="ToggleMaximize"/>
</keybind>
<!-- minimize -->
<keybind key="W-m">
<action name="Iconify"/>
</keybind>
</keyboard>

<mouse>
<dragThreshold>1</dragThreshold>
<!-- number of pixels the mouse must move before a drag begins -->
<doubleClickTime>200</doubleClickTime>
<!-- in milliseconds (1000 = 1 second) -->
<screenEdgeWarpTime>400</screenEdgeWarpTime>
<!-- Time before changing desktops when the pointer touches the edge of the
screen while moving a window, in milliseconds (1000 = 1 second).
Set this to 0 to disable warping -->
<screenEdgeWarpMouse>false</screenEdgeWarpMouse>
<!-- Set this to TRUE to move the mouse pointer across the desktop when
switching due to hitting the edge of the screen -->
<context name="Frame">
<mousebind button="A-Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="A-Left" action="Click">
<action name="Unshade"/>
</mousebind>
<mousebind button="S-Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="A-Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="A-Right" action="Drag">
<action name="Resize"/>
</mousebind>
<mousebind button="A-Middle" action="Press">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
<mousebind button="C-A-Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="C-A-Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
<mousebind button="A-S-Up" action="Click">
<action name="SendToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="A-S-Down" action="Click">
<action name="SendToDesktop">
<to>next</to>
</action>
</mousebind>
</context>
<context name="Titlebar">
<mousebind button="Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="Left" action="DoubleClick">
<action name="ToggleMaximize"/>
</mousebind>
<mousebind button="Up" action="Click">
<action name="if">
<shaded>no</shaded>
<then>
<action name="Shade"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
<action name="Lower"/>
</then>
</action>
</mousebind>
<mousebind button="Down" action="Click">
<action name="if">
<shaded>yes</shaded>
<then>
<action name="Unshade"/>
<action name="Raise"/>
</then>
</action>
</mousebind>
</context>
<context name="Titlebar Top Right Bottom Left TLCorner TRCorner BRCorner BLCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="Top">
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>top</edge>
</action>
</mousebind>
</context>
<context name="Left">
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>left</edge>
</action>
</mousebind>
</context>
<context name="Right">
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>right</edge>
</action>
</mousebind>
</context>
<context name="Bottom">
<mousebind button="Left" action="Drag">
<action name="Resize">
<edge>bottom</edge>
</action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="TRCorner BRCorner TLCorner BLCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="Client">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<context name="Icon">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="AllDesktops">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleOmnipresent"/>
</mousebind>
</context>
<context name="Shade">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleShade"/>
</mousebind>
</context>
<context name="Iconify">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Iconify"/>
</mousebind>
</context>
<context name="Maximize">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleMaximize"/>
</mousebind>
<mousebind button="Middle" action="Click">
<action name="ToggleMaximize">
<direction>vertical</direction>
</action>
</mousebind>
<mousebind button="Right" action="Click">
<action name="ToggleMaximize">
<direction>horizontal</direction>
</action>
</mousebind>
</context>
<context name="Close">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Close"/>
</mousebind>
</context>
<context name="Desktop">
<mousebind button="Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
<mousebind button="C-A-Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="C-A-Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<context name="Root">
<!-- Menus -->
<mousebind button="Middle" action="Press">
<action name="ShowMenu">
<menu>client-list-combined-menu</menu>
</action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="ShowMenu">
<menu>root-menu</menu>
</action>
</mousebind>
</context>
<context name="MoveResize">
<mousebind button="Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
</context>
</mouse>
<menu><!-- You can specify more than one menu file in here and they are all loaded,
just don't make menu ids clash or, well, it'll be kind of pointless --><!-- default menu file (or custom one in $HOME/.config/openbox/) --><file>menu.xml</file><hideDelay>200</hideDelay><!-- if a press-release lasts longer than this setting (in milliseconds), the
menu is hidden again --><middle>no</middle><!-- center submenus vertically about the parent entry --><submenuShowDelay>100</submenuShowDelay><!-- time to delay before showing a submenu after hovering over the parent
entry.
if this is a negative value, then the delay is infinite and the
submenu will not be shown until it is clicked on --><submenuHideDelay>400</submenuHideDelay><!-- time to delay before hiding a submenu when selecting another
entry in parent menu -->
if this is a negative value, then the delay is infinite and the
submenu will not be hidden until a different submenu is opened --&gt;
<applicationIcons>no</applicationIcons>
<!-- controls if icons appear in the client-list-(combined-)menu -->
<manageDesktops>no</manageDesktops>
<!-- show the manage desktops section in the client-list-(combined-)menu -->
</menu>
<applications>
<!-- customizations -->

<!-- Window decorations -->
<!-- Match all windows and remove their decorations -->
<application class="*"> <decor>yes</decor> </application>
<!-- Give back decorations to some app windows -->
<!--<application name="galculator"> <decor>yes</decor> </application>-->

<!--
# this is an example with comments through out. use these to make your
# own rules, but without the comments of course.
# you may use one or more of the name/class/role/title/type rules to specify
# windows to match
<application name="the window's _OB_APP_NAME property (see obxprop)"
class="the window's _OB_APP_CLASS property (see obxprop)"
role="the window's _OB_APP_ROLE property (see obxprop)"
title="the window's _OB_APP_TITLE property (see obxprop)"
type="the window's _OB_APP_TYPE property (see obxprob)..
(if unspecified, then it is 'dialog' for child windows)">
# you may set only one of name/class/role/title/type, or you may use more
# than one together to restrict your matches.
# the name, class, role, and title use simple wildcard matching such as those
# used by a shell. you can use * to match any characters and ? to match
# any single character.
# the type is one of: normal, dialog, splash, utility, menu, toolbar, dock,
# or desktop
# when multiple rules match a window, they will all be applied, in the
# order that they appear in this list
# each rule element can be left out or set to 'default' to specify to not
# change that attribute of the window
<decor>yes</decor>
# enable or disable window decorations
<shade>no</shade>
# make the window shaded when it appears, or not
<position force="no">
# the position is only used if both an x and y coordinate are provided
# (and not set to 'default')
# when force is "yes", then the window will be placed here even if it
# says you want it placed elsewhere. this is to override buggy
# applications who refuse to behave
<x>center</x>
# a number like 50, or 'center' to center on screen. use a negative number
# to start from the right (or bottom for <y>), ie -50 is 50 pixels from the
# right edge (or bottom).
<y>200</y>
<monitor>1</monitor>
# specifies the monitor in a xinerama setup.
# 1 is the first head, or 'mouse' for wherever the mouse is
</position>
<focus>yes</focus>
# if the window should try be given focus when it appears. if this is set
# to yes it doesn't guarantee the window will be given focus. some
# restrictions may apply, but Openbox will try to
<desktop>1</desktop>
# 1 is the first desktop, 'all' for all desktops
<layer>normal</layer>
# 'above', 'normal', or 'below'
<iconic>no</iconic>
# make the window iconified when it appears, or not
<skip_pager>no</skip_pager>
# asks to not be shown in pagers
<skip_taskbar>no</skip_taskbar>
# asks to not be shown in taskbars. window cycling actions will also
# skip past such windows
<fullscreen>yes</fullscreen>
# make the window in fullscreen mode when it appears
<maximized>true</maximized>
# 'Horizontal', 'Vertical' or boolean (yes/no)
</application>
# end of the example
-->
</applications>
</openbox_config>

+ 348
- 0
airootfs/root/.config/openbox/rc.xml View File

@@ -0,0 +1,348 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Do not edit this file, it will be overwritten on install.
Copy the file to $HOME/.config/openbox/ instead. -->
<openbox_config xmlns="http://openbox.org/3.4/rc" xmlns:xi="http://www.w3.org/2001/XInclude">
<resistance>
<strength>10</strength>
<screen_edge_strength>20</screen_edge_strength>
</resistance>
<focus>
<focusNew>yes</focusNew>
<!-- always try to focus new windows when they appear. other rules do
apply -->
<followMouse>no</followMouse>
<!-- move focus to a window when you move the mouse into it -->
<focusLast>no</focusLast>
<!-- focus the last used window when changing desktops, instead of the one
under the mouse pointer. when followMouse is enabled -->
<underMouse>no</underMouse>
<!-- move focus under the mouse, even when the mouse is not moving -->
<focusDelay>250</focusDelay>
<!-- when followMouse is enabled, the mouse must be inside the window for
this many milliseconds (1000 = 1 sec) before moving focus to it -->
<raiseOnFocus>no</raiseOnFocus>
<!-- when followMouse is enabled, and a window is given focus by moving the
mouse into it, also raise the window -->
</focus>
<placement>
<policy>Smart</policy>
<!-- 'Smart' or 'UnderMouse' -->
<center>no</center>
<!-- whether to place windows in the center of the free area found or
the top left corner -->
<monitor>Primary</monitor>
<!-- with Smart placement on a multi-monitor system, try to place new windows
on: 'Any' - any monitor, 'Mouse' - where the mouse is, 'Active' - where
the active window is, 'Primary' - only on the primary monitor -->
<primaryMonitor>1</primaryMonitor>
<!-- The monitor where Openbox should place popup dialogs such as the
focus cycling popup, or the desktop switch popup. It can be an index
from 1, specifying a particular monitor. Or it can be one of the
following: 'Mouse' - where the mouse is, or
'Active' - where the active window is -->
</placement>
<theme>
<name>Clearlooks</name>
<titleLayout>CS</titleLayout>
<!--
available characters are NDSLIMC, each can occur at most once.
N: window icon
L: window label (AKA title).
I: iconify
M: maximize
C: close
S: shade (roll up/down)
D: omnipresent (on all desktops).
-->
<keepBorder>no</keepBorder>
<animateIconify>no</animateIconify>
<font place="ActiveWindow">
<name>sans</name>
<size>8</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="InactiveWindow">
<name>sans</name>
<size>8</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="MenuHeader">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>normal</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="MenuItem">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>normal</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="ActiveOnScreenDisplay">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
<font place="InactiveOnScreenDisplay">
<name>sans</name>
<size>9</size>
<!-- font size in points -->
<weight>bold</weight>
<!-- 'bold' or 'normal' -->
<slant>normal</slant>
<!-- 'italic' or 'normal' -->
</font>
</theme>
<desktops>
<!-- this stuff is only used at startup, pagers allow you to change them
during a session
these are default values to use when other ones are not already set
by other applications, or saved in your session
use obconf if you want to change these without having to log out
and back in -->
<number>2</number>
<firstdesk>1</firstdesk>
<names>
<!-- set names up here if you want to, like this:
<name>desktop 1</name>
<name>desktop 2</name>
-->
</names>
<popupTime>875</popupTime>
<!-- The number of milliseconds to show the popup for when switching
desktops. Set this to 0 to disable the popup. -->
</desktops>
<resize>
<drawContents>yes</drawContents>
<popupShow>Nonpixel</popupShow>
<!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) -->
<popupPosition>Center</popupPosition>
<!-- 'Center', 'Top', or 'Fixed' -->
<popupFixedPosition>
<!-- these are used if popupPosition is set to 'Fixed' -->
<x>10</x>
<!-- positive number for distance from left edge, negative number for
distance from right edge, or 'Center' -->
<y>10</y>
<!-- positive number for distance from top edge, negative number for
distance from bottom edge, or 'Center' -->
</popupFixedPosition>
</resize>
<!-- You can reserve a portion of your screen where windows will not cover when
they are maximized, or when they are initially placed.
Many programs reserve space automatically, but you can use this in other
cases. -->
<margins>
<top>0</top>
<bottom>0</bottom>
<left>0</left>
<right>0</right>
</margins>
<dock>
<position>TopLeft</position>
<!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating -->
<floatingX>0</floatingX>
<floatingY>0</floatingY>
<noStrut>no</noStrut>
<stacking>Above</stacking>
<!-- 'Above', 'Normal', or 'Below' -->
<direction>Vertical</direction>
<!-- 'Vertical' or 'Horizontal' -->
<autoHide>no</autoHide>
<hideDelay>300</hideDelay>
<!-- in milliseconds (1000 = 1 second) -->
<showDelay>300</showDelay>
<!-- in milliseconds (1000 = 1 second) -->
<moveButton>Middle</moveButton>
<!-- 'Left', 'Middle', 'Right' -->
</dock>
<mouse>
<dragThreshold>1</dragThreshold>
<!-- number of pixels the mouse must move before a drag begins -->
<doubleClickTime>200</doubleClickTime>
<!-- in milliseconds (1000 = 1 second) -->
<screenEdgeWarpTime>400</screenEdgeWarpTime>
<!-- Time before changing desktops when the pointer touches the edge of the
screen while moving a window, in milliseconds (1000 = 1 second).
Set this to 0 to disable warping -->
<screenEdgeWarpMouse>false</screenEdgeWarpMouse>
<!-- Set this to TRUE to move the mouse pointer across the desktop when
switching due to hitting the edge of the screen -->
<context name="Titlebar">
<mousebind button="Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="Left" action="DoubleClick">
<action name="ToggleMaximize"/>
</mousebind>
<mousebind button="Up" action="Click">
<action name="if">
<shaded>no</shaded>
<then>
<action name="Shade"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
<action name="Lower"/>
</then>
</action>
</mousebind>
<mousebind button="Down" action="Click">
<action name="if">
<shaded>yes</shaded>
<then>
<action name="Unshade"/>
<action name="Raise"/>
</then>
</action>
</mousebind>
</context>
<context name="Titlebar Top Right Bottom Left TLCorner TRCorner BRCorner BLCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
</context>

<context name="Client">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<!-- <context name="Icon">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context> -->
<context name="AllDesktops">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleOmnipresent"/>
</mousebind>
</context>
<context name="Shade">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleShade"/>
</mousebind>
</context>
<context name="Iconify">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Iconify"/>
</mousebind>
</context>
<context name="Maximize">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
</context>

<context name="Close">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Close"/>
</mousebind>
</context>

<context name="Desktop">
<mousebind button="Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>

<context name="MoveResize">
<mousebind button="Up" action="Click">
<action name="GoToDesktop">
<to>previous</to>
</action>
</mousebind>
<mousebind button="Down" action="Click">
<action name="GoToDesktop">
<to>next</to>
</action>
</mousebind>
</context>
</mouse>
<menu>
<!--
<file>menu.xml</file>
<hideDelay>200</hideDelay>
<middle>no</middle>
<submenuShowDelay>100</submenuShowDelay>
<submenuHideDelay>400</submenuHideDelay>
<applicationIcons>no</applicationIcons>
<manageDesktops>no</manageDesktops>
-->
</menu>
<applications>
<application class="*">
<decor>no</decor>
<maximized>yes</maximized>
<fullscreen>no</fullscreen>
<position force="yes">
<x>0</x>
<y>0</y>
</position>
</application>
</applications>

</openbox_config>

+ 1
- 0
airootfs/root/.gnupg/crls.d/DIR.txt View File

@@ -0,0 +1 @@
v:1:

BIN
airootfs/root/.gnupg/pubring.kbx View File


BIN
airootfs/root/.gnupg/pubring.kbx~ View File


BIN
airootfs/root/.gnupg/trustdb.gpg View File


+ 0
- 0
airootfs/root/.tor-browser/LOG View File


+ 1
- 0
airootfs/root/.tor-browser/VERSION View File

@@ -0,0 +1 @@
8.0.3

BIN
airootfs/root/.tor-browser/app/Browser/.cache/event-sound-cache.tdb.92d48d120f5641c58cbef0260b495d9f.x86_64-pc-linux-gnu View File


BIN
airootfs/root/.tor-browser/app/Browser/.cache/fontconfig/8dda681e-3b85-4fda-b520-2e8de88fe9cf-le64.cache-7 View File


+ 4
- 0
airootfs/root/.tor-browser/app/Browser/.cache/fontconfig/CACHEDIR.TAG View File

@@ -0,0 +1,4 @@
Signature: 8a477f597d28d172789f06886806bc55
# This file is a cache directory tag created by fontconfig.
# For information about cache directory tags, see:
# http://www.brynosaurus.com/cachedir/

+ 2
- 0
airootfs/root/.tor-browser/app/Browser/.config/gtk-3.0/settings.ini View File

@@ -0,0 +1,2 @@
[Settings]
gtk-primary-button-warps-slider = false

+ 46
- 0
airootfs/root/.tor-browser/app/Browser/.local/share/recently-used.xbel View File

@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<xbel version="1.0"
xmlns:bookmark="http://www.freedesktop.org/standards/desktop-bookmarks"
xmlns:mime="http://www.freedesktop.org/standards/shared-mime-info"
>
<bookmark href="file:///root/.tor-browser/app/Browser/updater" added="2018-11-22T23:41:44Z" modified="2018-11-22T23:41:44Z" visited="2018-11-22T23:41:44Z">
<info>
<metadata owner="http://freedesktop.org">
<mime:mime-type type="application/octet-stream"/>
<bookmark:applications>
<bookmark:application name="Firefox" exec="&apos;firefox %u&apos;" modified="2018-11-22T23:41:44Z" count="1"/>
</bookmark:applications>
</metadata>
</info>
</bookmark>
<bookmark href="file:///root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/manifest.json" added="2018-11-22T23:42:44Z" modified="2018-11-23T10:06:36Z" visited="2018-11-22T23:42:44Z">
<info>
<metadata owner="http://freedesktop.org">
<mime:mime-type type="application/json"/>
<bookmark:applications>
<bookmark:application name="Firefox" exec="&apos;firefox %u&apos;" modified="2018-11-23T10:06:36Z" count="10"/>
</bookmark:applications>
</metadata>
</info>
</bookmark>
<bookmark href="file:///root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/add-on/manifest.json" added="2018-11-22T23:55:06Z" modified="2018-11-23T00:02:26Z" visited="2018-11-22T23:55:06Z">
<info>
<metadata owner="http://freedesktop.org">
<mime:mime-type type="application/json"/>
<bookmark:applications>
<bookmark:application name="Firefox" exec="&apos;firefox %u&apos;" modified="2018-11-23T00:02:26Z" count="2"/>
</bookmark:applications>
</metadata>
</info>
</bookmark>
<bookmark href="file:///root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown.xpi" added="2018-11-23T10:26:08Z" modified="2018-11-23T10:26:08Z" visited="2018-11-23T10:26:09.248910Z">
<info>
<metadata owner="http://freedesktop.org">
<mime:mime-type type="application/x-xpinstall"/>
<bookmark:applications>
<bookmark:application name="Firefox" exec="&apos;firefox %u&apos;" modified="2018-11-23T10:26:08Z" count="1"/>
</bookmark:applications>
</metadata>
</info>
</bookmark>
</xbel>

+ 7
- 0
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/native-messaging-hosts/shutdown.json View File

@@ -0,0 +1,7 @@
{
"name": "shutdown",
"description": "Shutdown the OS from Tor Browser for deprOS",
"path": "/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/shutdown.py",
"type": "stdio",
"allowed_extensions": [ "kill@depr.os" ]
}

BIN
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown.xpi View File


+ 5
- 0
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/background.js View File

@@ -0,0 +1,5 @@
var port = browser.runtime.connectNative("shutdown");

browser.browserAction.onClicked.addListener(() => {
port.postMessage("kill");
});

BIN
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-16.png View File


BIN
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-32.png View File


BIN
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-48.png View File


BIN
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/icons/quit-96.png View File


+ 28
- 0
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/manifest.json View File

@@ -0,0 +1,28 @@
{

"description": "Shutdown the OS from Tor Browser for deprOS",
"manifest_version": 2,
"name": "shutdown",
"version": "1.0",
"icons": {
"48": "icons/quit-48.png"
},

"applications": {
"gecko": {
"id": "kill@depr.os",
"strict_min_version": "50.0"
}
},

"background": {
"scripts": ["background.js"]
},

"browser_action": {
"default_icon": "icons/quit-48.png"
},

"permissions": ["nativeMessaging"]

}

+ 64
- 0
airootfs/root/.tor-browser/app/Browser/TorBrowser/Data/Browser/.mozilla/systemextensionsdev/shutdown/shutdown.bak.py View File

@@ -0,0 +1,64 @@
#!/usr/bin/env python

import sys
import json
import struct
import os

try:
# Python 3.x version
# Read a message from stdin and decode it.
def getMessage():
rawLength = sys.stdin.buffer.read(4)
if len(rawLength) == 0:
sys.exit(0)
messageLength = struct.unpack('@I', rawLength)[0]
message = sys.stdin.buffer.read(messageLength).decode('utf-8')
return json.loads(message)

# Encode a message for transmission,
# given its content.
def encodeMessage(messageContent):
encodedContent = json.dumps(messageContent).encode('utf-8')
encodedLength = struct.pack('@I', len(encodedContent))
return {'length': encodedLength, 'content': encodedContent}

# Send an encoded message to stdout
def sendMessage(encodedMessage):
sys.stdout.buffer.write(encodedMessage['length'])
sys.stdout.buffer.write(encodedMessage['content'])
sys.stdout.buffer.flush()

while True:
receivedMessage = getMessage()
if receivedMessage == "kill":
sendMessage(encodeMessage("pong3"))
except AttributeError:
# Python 2.x version (if sys.stdin.buffer is not defined)
# Read a message from stdin and decode it.
def getMessage():
rawLength = sys.stdin.read(4)
if len(rawLength) == 0:
sys.exit(0)