renamed (moved) scripts/ to code/

This commit is contained in:
taradiddles 2018-03-18 18:30:28 +02:00
parent 68d9cbd779
commit d96f2d4d5f
21 changed files with 0 additions and 0 deletions

25
code/README.md Normal file
View file

@ -0,0 +1,25 @@
### Caution before use ###
We, as in any Qubes-Community users, collaborators, members and owners, expect that anyone using anything produced, uploaded, adviced or otherwise, that comes out of the Qubes Community, to be met with a healthy amount of skepticism. Please be careful about running any scripts, following wiki's, doc's or guide's, which you don't understand what do. We take no responsibility for any damage or losses. We do however wish to keep the reliability, as well as security and privacy, at the best quality possible, but we are not accountable for not meeting our goals.
This site is run by volunteers. The Qubes OS Project is not affiliated with this site and does not endorse the content of any of these pages.
# Description of scripts
## howto-build-win7-appvm
a howto which will list all steps to create Windows 7 HVM in Qubes 4.
Starting from booting up the ISO, installing Qubes Windows Tools, Fixing networking and enabling seamless mode.
## qubes-auto-update-script-alpha.sh
? to be defined ?
## qubes-create-minimal-sys-vms
describes how to provision sys-net / sys-usb / sys-firewall based on fedora-26-minimal templates instead of a full fedora-template.
## qvm-backup-to-appvm
script which can copy data from dom0 to an gzipped tarfile in an AppVM.
## qvm-copy-to-dom0
script which can copy data from an AppVM to a location in dom0.
(script must be launched from dom 0)

108
code/howto-build-win7-appvm Normal file
View file

@ -0,0 +1,108 @@
# This Howto describes all steps to create a windows 7 HVM starting from a windows 7 ISO
# Warning: this is not a script which can be copy & pasted.
# It is meant as a guide which steps must be completed to get a win7 HVM working
# It will also cover how to install Qubes Windows Tools and fix networking
# Initial author: [799] - https://github.com/one7two99
# Date: 12.Mar 2018
# See also: https://www.qubes-os.org/doc/hvm/
# See also: https://www.qubes-os.org/doc/windows-appvms/
# copy Windows-Installation ISO to an AppVM
# Create new AppVM
qvm-create win7 --class StandaloneVM --property virt_mode=hvm --property kernel="" --property memory=4096 --property maxmem=4096 --property debug=True --label blue
qvm-features win7 video-model cirrus
# Enlarge available diskspace in the new AppVM:
# System storage max. size:
qvm-volume extend win7:root 40GB
# Private storage max. size:
qvm-volume extend win7:private 20GB
# Start AppVM with Installation-ISO
qvm-start win7 --cdrom=<APPVM>:/home/user/win7.iso
# Run through the Installer
# Check Qubes-Settings of the Windows VM and note down IP / Netmask / Gateway
# optionally: Setup manual IP-Adress within the windows VM
# Disable Hybernation (cmd as Administrator)
powercfg -h off
# Disable Login as user
netplwiz
# [ ] Users must enter a username and password to use this computer
# Apply all windows Updates which will take several reboots
# Hint: make sure to search for updates again, even if windows claims to be on the latest version
# It will take several reboots to get to the actual patch level
# Install other applications as needed Chocolatey
choco install -y adobereader jre8 firefoxesr googlechrome notepadplusplus emacs vlc putty winscp rdm libreoffice calibre flashplayerplugin 7zip git paint.net gimp keepass thunderbird
# Backup VM in dom0, prior to installing Qubes Windows Tools
# In this example the backup will be stored in my Backup-VM (my-backup) to the folder /home/user/backup
# You can also use an external storage device here
# Hint: make sure to have enough space available
qvm-backup --verbose win7 --encrypt --compress --dest-vm my-backup /home/user/backup
# Install Qubes Windows Tools
# Download qubes-windows-tools from Qubes 3.2 repository
wget https://ftp.qubes-os.org/repo/yum/r3.2/current-testing/dom0/fc23/rpm/qubes-windows-tools-3.2.2-3.x86_64.rpm
# move the rpm file to dom0, run in dom0
qvm-run --pass-io my-untrusted 'cat /home/user/Download/qubes-windows-tools-3.2.2-3.x86_64.rpm' > qubes-windows-tools-3.2.2-3.x86_64.rpm
# Verify rpm package
rpm -K qubes-windows-tools-3.2.2-3.x86_64.rpm
# Install rpm-package
rpm -ivh qubes-windows-tools-3.2.2-3.x86_64.rpm
# Qubes Windows Tools ISO will be located at /usr/lib/qubes/qubes-windows-tools.iso
# Start windows VM with attached Qubes Windows Tools
qvm-start win8 --install-windows-tools
# Complete Qubes Tools installation, do not restart when prompted to do so but start after the installation has been completed.
# Run the first installation with the default setup options.
# Shutdown and restart the windows VM to finish installation of Qubes Windows Tools
# Disable debug mode to get seamless mode working.
qvm-prefs --set win7 debug False
# Test seamless mode
qvm-run --auto win7 explorer.exe
# Windows will show a yellow warning in the network icon located in the windows taskbar, even when a connection is available.
# Open Properties of LAN-Card
# Where you would normale configure IP-setting, choose Configure, which will open up Hardware Setttings window of your LAN-adapter
# Choose 2nd Tab ("Advanced") and disable "IP4 Checksum Offload"
# Go back to IP setting, disable IPv6 and configure a static IP for IPv4 using the IP which is shown for the HVM in Qubes Manager
# Reboot, change should be persistent and the warning sign should be gone.
# Fix Networking after intalling Qubes Windows Tools
# Link 1: https://github.com/QubesOS/qubes-issues/issues/3585
# Check DNS Settings in of your Linux AppVMs
cat /etc/resolv.conf
# nameserver 10.139.1.1
# nameserver 10.139.1.2
# Check the IP-settings of your windows AppVM via QubesSetting or in dom0
# write down IP-adress, subnetmask (255.255.255.255 and gateway=
qvm-ls -n
# Disable the "Qubes Network Setup" service via CMD as Administrator in the win-AppVM:
# make sure to add a space after the equal sign
sc config "QubesNetworkSetup" start= disabled
# Go to your LAN-Card and edit its network properties
# Right click on Network Icon in the taskbar / Open Network and Sharing Center / Change Adapter Settings
# Right click on LAN-adapter > Properties:
# Disable IPv6
# Configure IPv4 via Properties with the settings you have noted before, Example:
# Use the following IP address:
# IP address: 10.137.0.17
# Subnet mask: 255.255.255.255
# Default Gateway: 10.137.0.6
# Use the following DNS server addresses:
# Preferred DNS server: 10.139.1.1
# Alternate DNS server: 10.139.1.2
# Ignore Warning ("The default gateway is not on the same network segment (subnet) that is defined by the IP
# address and subnet mask. Do you want to save this configuration")
# Click: Yes
# Recommendation: Reboot Windows AppVM

View file

@ -0,0 +1,9 @@
### A small, but handy script collection ###
Here you may find all small community scripts which does not fall logically into a script theme folder, or scripts which are too rarely used to be listed on the script overview list.
### Caution before use ###
We, as in any Qubes-Community users, collaborators, members and owners, expect that anyone using anything produced, uploaded, adviced or otherwise, that comes out of the Qubes Community, to be met with a healthy amount of skepticism. Please be careful about running any scripts, following wiki's, doc's or guide's, which you don't understand what do. We take no responsibility for any damage or losses. We do however wish to keep the reliability, as well as security and privacy, at the best quality possible, but we are not accountable for not meeting our goals.
This site is run by volunteers. The Qubes OS Project is not affiliated with this site and does not endorse the content of any of these pages.

View file

@ -0,0 +1,10 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
wmctrl -r :ACTIVE: -b toggle,fullscreen

View file

@ -0,0 +1,11 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
wmctrl -r :SELECT: -b toggle,fullscreen

View file

@ -0,0 +1,12 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
wid=$(xdotool search --name 'Mozilla Firefox')
wmctrl -i -r $wid -b toggle,fullscreen

View file

@ -0,0 +1,161 @@
#!/bin/sh
#Title description
##Unofficial Qubes Maintenance Updater (uQMU).
#>>>>WARNING!<<<<
##Please read the script carefully, do not run if you do not know what it does.
##Be sure you edit it correctly to your own needs.
#Disclaimer:
## - At this point in time, this script has not been quality reviewed.
## - Feel free to critesize by suggesting constructive improvements, or by commit to
## the script on github.
## - We, or I, take no responsibility for use of this script, please study it before
## you use this unfinished script at your own risk.
#Authors:
##Aekez @ https://github.com/Qubes-Community
#Quick purpose overview:
## This script performs auto-updates of dom0 and every default template. The script is
## highly customizeable, warning message/Quick-Backup/repositories, can be adjusted or
## disabled. It also includes a quick optional qvm-backup reminder/starter. If you use
## backup profiles instead of manually configuring which VMs to include or exclude in
## the qvm-backup, then all you need to do is to adjust the qvm-backup command below,
## similar to how you normally would execute the command in dom0 terminal.
#Important notes
##1) Be sure you have enough free RAM to run the largest RAM intensive template, one at a time.
##2) The script will halt if it is interupted, such as not enoguh RAM.
##3) VMs will shutdown automatically if no updates, or after succesfull update install.
##4) You may include the -y option to auto-accept updates in some VMs, be careful though.
##5) You can disable the Quick Backup, however if you use it then remember to configure it.
##6) Add or remove # in front of the command instructions to disable/enable commands.
##7) Its essential to keep dom0/templates in sync between repositories.
##8) Repositories must be in sync, such as between stable & current-testing for dom0/tempaltes.
##9) Only use current-testing if you know what you are getting yourself into (untested updates).
#10) This script release version is only tested on Qubes 4.0.
#Warning message
##This warning meesage can be disabled with a #. It includes essential warning for new users
##not aware of the pitfalls of scripts. Its highly recommended that new users study how the
##script works, it's not very complicated, but also not straight simple either.
zenity --width="420" --height="200" --title="Welcome to uQMU!" --info --text='This script allows you to easily keep Qubes 4 in a good state with proper update maintenance.\n\n\- Warning! Please read the comments inside the script carefully before running this script.\n\n- The script is out-of-the-box safety locked, you need to edit the "#" to enable features. Quick Backup and Reboot prompt are by default enabled, as you will notice when you click "ok" below, however requires an address path and target BackupVM. Please decline the next two prompts, and then edit the script for your needs.\n\n Please do not use Quick Backup before you manually adjusted it to your needs inside the script.' 2> /dev/null
wait
#Quick Backup Redundancy
##The purpose here is to serve as a reminder to backup before performing updates. Updates always
##carry a risk of making the system unbootable. This serves as a popup message, which you
##can decline to continue without starting qvm-backup, or click yes to perform your qvm-backup.
##Keep in mind you need to adjust it below to your own customized qvm-backup. The default will
##only exclude system dom0 & default templates. However a proper path/src-VM is still required.
##Remember to put the backup externally, so that you can access it if the system does not boot.
##Partial credit for this section rhss6-2011 @ https://ubuntuforums.org/showthread.php?t=2239195
ans=$(zenity --width="420" --height="200" --title="Welcome to uQMU!" --question --text='Must have sufficient free RAM to run the uQMU.\n\nPllease select if you want to perform a pre-selected AppVM backup. To execute a backup profile, or specific inclusion/exclusion of VMs, can be modified and standardized within the script.' --ok-label="Yes" --cancel-label="No" 2> /dev/null
if [ $? = 0 ] ; then
command=$(xterm -e 'sudo qvm-backup -d add-VM-name-here "/home/user/" -x fedora-26 -x debian-9 -x whonix-ws -x whonix-gw -x sys-net -x sys-firewall -x sys-usb -x sys-whonix -x fedora-26-dvm -x whonix-ws-dvm -x anon-whonix')
else
command=$()
fi
)
wait
##Qubes dom0 updates
#xterm -e 'sudo qubes-dom0-update --clean'
#xterm -e 'sudo qubes-dom0-update --enablerepo=qubes-dom0-current-testing --clean'
wait
echo -ne "$(tput setaf 4)($(tput setaf 6)# $(tput setaf 4)) $(tput setaf 6)Dom0 update has finished.$(tput setaf 9)\n"
wait
##Default Qubes fedora template - Only enable one repository, and keep the same type across all templates/dom0.
#qvm-start fedora-26 #Needed to avoid premature qvm-run shutdown.
wait
#qvm-run fedora-26 'xterm -e sudo dnf update --refresh'
#qvm-run fedora-26 'xterm -e sudo dnf update --enablerepo=qubes-vm-*-current-testing --refresh'
wait
#qvm-shutdown fedora-26 #Needed if qvm-start is used.
wait
echo -ne "$(tput setaf 4)(#$(tput setaf 6)# $(tput setaf 4)) $(tput setaf 6)Fedora-26 update has finished.$(tput setaf 9)\n"
wait
##Default Qubes debian template.
#qvm-start debian-9 #Needed to avoid premature qvm-run shutdown, important here.
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get check' #Can be enabled to check dependencies and cache-checks.
wait
#qvm-run debian-9 'xterm -e sudo apt-get update'
wait
#qvm-run debian-9 'xterm -e sudo apt-get dist-upgrade'
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get update -t *-testing'
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get dist-upgrade -t *-testing'
wait
#qvm-shutdown debian-9 #Needed if qvm-start is used.
wait
echo -ne "$(tput setaf 4)(##$(tput setaf 6)# $(tput setaf 4)) $(tput setaf 6)Debian-9 update has finished.$(tput setaf 9)\n"
wait
##Default Qubes Whonix-WS.
#qvm-start whonix-ws #Needed to avoid premature qvm-run shutdown, important here.
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get check' #Can be enabled to check dependencies and cache-checks.
wait
#qvm-run whonix-ws 'xterm -e sudo apt-get update'
wait
#qvm-run whonix-ws 'xterm -e sudo apt-get dist-upgrade'
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get update -t *-testing'
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get dist-upgrade -t *-testing'
wait
#qvm-shutdown whonix-ws #Needed if qvm-start is used.
wait
echo -ne "$(tput setaf 4)(###$(tput setaf 6)# $(tput setaf 4)) $(tput setaf 6)Whonix-WS update has finished.$(tput setaf 9)\n"
wait
##Default Qubes Whonix-GW. Keep both commands enabled.
#qvm-start whonix-gw #Needed to avoid premature qvm-run shutdown, important here.
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get check' #Can be enabled to check dependencies and cache-checks.
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get update'
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get dist-upgrade'
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get update -t *-testing'
wait
#qvm-run whonix-gw 'xterm -e sudo apt-get dist-upgrade -t *-testing'
wait
#qvm-shutdown whonix-gw #Needed if qvm-start is used.
wait
echo -ne "$(tput setaf 4)(####$(tput setaf 6)#$(tput setaf 4)) $(tput setaf 6)Whonix-GW update has finished.$(tput setaf 9)\n"
wait
echo -ne "$(tput setaf 4)(#####) $(tput setaf 6)The uQMU script has finished.\n"
echo -ne '\n'$(tput setaf 9)
wait
#qvm-shutdown sys-whonix #Optional.
#wait
##Conclusion: Question message, whether to restart or not. Copied logic, credit goes
##to rhss6-2011 @ https://ubuntuforums.org/showthread.php?t=2239195
ans=$(zenity --width="420" --height="200" --title="uQMU has reached its conclusion." --question --text='The update-script has successfully reached its conflusion.\n\n- Click "Yes" to perform a full system restart.\n\n- Click "No" if no restart is required or you wish to restart manually later.' --ok-label="Yes" --cancel-label="No" 2> /dev/null
if [ $? = 0 ] ; then
command=$(xterm -e shutdown -h now) #use 'reboot -h now' instead of shutdown if you want the 'Yes' button to perform a reboot.
else
command=$()
fi
)
#done

View file

@ -0,0 +1,37 @@
#!/bin/bash
# qubes-create-minimal-sys-vms
# Script to setup sys-net / sys-firewall / sys-usb based on a fedora-26.minimal template
# See also: https://www.qubes-os.org/doc/templates/fedora-minimal/
#
# Disclaimer:
# all scripts in the Qubes-Community docs have to be treated as alpha or beta status
# Do not use this scripts if you don't understand what the script is doing in each step
# If you have questions and comment, feel free to comment (and improve this script)
#
# Comments:
# After this script has been run, you should have a new Template t-sys which can be used as template for your sys-VMs
# To change the templates: shutdown or kill the sys-vms and then use qvm-prefs to set the new template
# qvm-kill sys-usb && qvm-prefs --set sys-usb template t-sys
# qvm-kill sys-firewall && qvm-prefs --set sys-firewall template t-sys
# qvm-kill sys-net && qvm-prefs --set sys-net template t-sys
# Install default minimal template in dom0
sudo qubes-dom0-update qubes-template-fedora-26-minimal
# Clone template to keep the original template
qvm-clone fedora-26-minimal t-sys
# Update all packages in the minimal template
qvm-run --auto --user root t-sys "xterm -hold -e 'dnf upgrade'"
# Install some basic applications, which are helpfull for troubleshooting
qvm-run --auto --user root t-sys "xterm -hold -e 'dnf -y install gnome-terminal terminus-fonts less vim-minimal nano dejavu-sans-fontsl sudo pciutils psmisc gnome-keyring usbutils'"
# Install special Qubes-packages for the sys-vms
qvm-run --auto --user root t-sys "xterm -hold -e 'dnf -y install qubes-core-agent-qrexec qubes-core-agent-systemd qubes-core-agent-passwordless-root polkit qubes-core-agent-nautilus qubes-core-agent-networking qubes-core-agent-network-manager network-manager-applet notification-daemon qubes-core-agent-dom0-updates qubes-usb-proxy pulseaudio-qubes NetworkManager-wwan NetworkManager NetworkManager-wifi'"
# Install USB proxy package from the testing repositories
qvm-run --auto --user root t-sys "xterm -hold -e 'dnf -y install --enablerepo=qubes-vm-*-current-testing qubes-input-proxy-sender'"
# Install Linux Firmware
qvm-run --auto --user root t-sys "xterm -hold -e 'dnf -y install linux-firmware'"

View file

@ -0,0 +1,9 @@
### Screenshot scripts ###
Here you have different choices, inspect and find one that matches your needs.
### Caution before use ###
We, as in any Qubes-Community users, collaborators, members and owners, expect that anyone using anything produced, uploaded, adviced or otherwise, that comes out of the Qubes Community, to be met with a healthy amount of skepticism. Please be careful about running any scripts, following wiki's, doc's or guide's, which you don't understand what do. We take no responsibility for any damage or losses. We do however wish to keep the reliability, as well as security and privacy, at the best quality possible, but we are not accountable for not meeting our goals.
This site is run by volunteers. The Qubes OS Project is not affiliated with this site and does not endorse the content of any of these pages.

View file

@ -0,0 +1,35 @@
#!/bin/bash
# qvm-screenshot-to-clipboard
# Creates a dom0 screenshot and copy it to the Clipboard of an AppVM
# Version: 0.1 without any error checking
# Initial author: [799] - https://github.com/one7two99/
#
# Usage: qvm-screenshot-to-clipboard <Name of AppVM>
# Hint: make sure to have xclip available in dom0 and the AppVMs (Template)
# Define Variables
MyAppVM=$1
MyScreenshot=qvm-screenshot-to-clipboard.png
# Take screenshot in dom0 by selecting an area and adding border+shadow
gnome-screenshot --area --include-border --border-effect=shadow --file=/tmp/$MyScreenshot
# Copy screenhot to AppVM
qvm-move-to-vm $MyAppVM /tmp/$MyScreenshot
# Create a helper-Script in the AppVM to copy screenshot file to clipboard
echo "xclip -selection clipboard -l 1 -t image/png /home/user/QubesIncoming/dom0/$MyScreenshot" > /tmp/file2clipboard.sh
chmod +x /tmp/file2clipboard.sh
qvm-move-to-vm $MyAppVM /tmp/file2clipboard.sh
# Send notification for 5sec when Screenshot has been pasted into (!) AppVM
notify-send --urgency low --icon image --expire-time=5000 "qvm-screenshot-to-clipboard" "Screenshot available in $MyAppVM's clipboard"
# Run the helper script in the AppVM
qvm-run $MyAppVM /home/user/QubesIncoming/dom0/file2clipboard.sh
### The last command will remain active until the pasting has been done in the AppVM
# Send notification for 5sec after Screenshot has been pasted from (!) AppVM
notify-send --urgency low --icon image --expire-time=5000 "qvm-screenshot-to-clipboard" "Screenshot pasted from $MyAppVM's clipboard"
# Remove helper script and screenshot file in AppVM
qvm-run $MyAppVM "rm -f /home/user/QubesIncoming/dom0/file2clipboard.sh /home/user/QubesIncoming/dom0/$MyScreenshot"

View file

@ -0,0 +1,19 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
#Tip:
#1) You may change the dom0 output folder ~/Screenshots if desired.
#2) mv "$()" and the -o option flag, autosaves screenshots.
#3) Put a longer sleep time if you need to prepare.
#4) A minimum sleep timer is adviced to ensure qvm-move works.
#5) screenshot_* moves all files named screenshot_ in that foler.
mv "$(xfce4-screenshooter -fo ls)" ~/Screenshots
( sleep 3 )
qvm-move-to-vm AppVM ~/Screenshots/screenshot_*

View file

@ -0,0 +1,20 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
#Tip:
#1) You may change the dom0 output folder ~/Screenshots if desired.
#2) mv "$()" and the -o option flag, autosaves screenshots.
#3) Put a longer or shorter sleep time if you need more or less time
# to assign a screenshot region.
#4) A minimum sleep timer is adviced to ensure qvm-move works.
#5) screenshot_* moves all files named screenshot_ in that foler.
mv "$(xfce4-screenshooter -ro ls)" ~/Screenshots
( sleep 15 )
qvm-move-to-vm AppVM ~/Screenshots/Screenshot_*

View file

@ -0,0 +1,19 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
#Tip:
#1) You may change the dom0 output folder ~/Screenshots if desired.
#2) mv "$()" and the -o option flag, autosaves screenshots.
#3) Put a longer sleep time if you need to prepare.
#4) A minimum sleep timer is adviced to ensure qvm-move works.
#5) screenshot_* moves all files named screenshot_ in that foler.
mv "$(xfce4-screenshooter -wo ls)" ~/Screenshots
( sleep 3 )
qvm-move-to-vm AppVM ~/Screenshots/screenshot_*

View file

@ -0,0 +1,10 @@
### Qubes sound control scripts
Here you may find various of different kinds of Qubes sound control. Some work in other *nix operation systems as well, but others are Qubes specific, for example volume control of specific AppVM's. (More will be uploded later).
### Caution before use ###
We, as in any Qubes-Community users, collaborators, members and owners, expect that anyone using anything produced, uploaded, adviced or otherwise, that comes out of the Qubes Community, to be met with a healthy amount of skepticism. Please be careful about running any scripts, following wiki's, doc's or guide's, which you don't understand what do. We take no responsibility for any damage or losses. We do however wish to keep the reliability, as well as security and privacy, at the best quality possible, but we are not accountable for not meeting our goals.
This site is run by volunteers. The Qubes OS Project is not affiliated with this site and does not endorse the content of any of these pages.

View file

@ -0,0 +1,18 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
#Tips:
#1) Change 0 if you are using a different sink sound output.
#2) Change toggle to 1 if you want to only enable the sound, not toggle.
#3) Change toggle to 0 if you want to only disable all sounds, not toggle.
#4) If pactl isn't installed, then you need to install
# pulseaudio-utils in dom0.
# 'sudo qubes-dom0-update pulseaudio-utils'
pactl set-sink-input-mute 0 toggle

View file

@ -0,0 +1,17 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
#Tips:
#1) Change 0 to the sink output you are using.
#2) You can change the % value to a fixed value.
#3) If pactl isn't installed, then you need to install
# pulseaudio-utils in dom0.
# 'sudo qubes-dom0-update pulseaudio-utils'
pactl set-sink-volume 0 -20%

View file

@ -0,0 +1,17 @@
#!/bin/sh
#Author:
#Aekez @ Github
#Disclaimer:
#Please use this script responsibly & at own risk.
#Please study the script, so that you know how it works.
#Tips:
#1) Change 0 to the sink output you are using.
#2) You can change the % value to a fixed value.
#3) If pactl isn't installed, then you need to install
# pulseaudio-utils in dom0.
# 'sudo qubes-dom0-update pulseaudio-utils'
pactl set-sink-volume 0 +20%

View file

@ -0,0 +1,23 @@
### Qubes Wire - Chat server ###
Work is being done to prepare a guide to set up a Wire server on a Qubes sytem, to maximize secure chat, while still having features akin to Whatsapp, Skype and even Discord. Wire is open source, for client as well as server, however uses a similar business-model where they offer free 1:1 uses, and a small fee paid version for group features.
Wire is end-to-end encrypted on the client side, even if you don't use a trusted server, the client is still in your control, and the encryption and keys are handled in your client, not on the Wire server.
In addition the Wire client also works on all major platforms, whether mobile of desktops, android/ios/linux/linux-appimages/windows/mac.
You may use your phone number, however it is not required, you can also use your e-mail or an anonymouse e-mail. Wire is very flexible, and tries to respect your freedom, open source and your human rights.
Similar they do not endorse datamining, but instead relies on businesses and groups to pay a small fee, in roder to stay in business.
This is very speculative, however it should be noted that their business-model is very new, they might have to review how to survive if the income isn't high enough to cover costs.
All their client source code's can be found here
https://github.com/wireapp
Their server source code can be found here
https://github.com/wireapp/wire-server
Their official website can be found here (Please note that personal uses are free even without a private hosted server)
https://wire.com/en/
Stay tuned for more.
For the time being you can download the Linux appimage or the Linux binaries, and install Wire and use through their official servers. It's free for personal 1:1 use-cases. Also keep in mind that currently private hosted Wire servers cannot reach the official hosted Wire server, however the Wire developers has said they plan to fix this. So far, they've been true on their words, and are showing a pro-open-source attitude. We'll see, but it's looking good for now.

19
code/qvm-backup-to-appvm Normal file
View file

@ -0,0 +1,19 @@
#!/bin/bash
# qvm-backup-to-appvm
# Version: 0.1
# Copy files from dom0 to an archive in an AppVM
# Usage : qvm-backup-to-appvm <Source> <AppVM> <Destination> <Archive>
# Example: qvm-backup-to-appvm ~/bin my-untrusted /home/user/backup backup.tgz
Source=$1
AppVM=$2
Destination=$3
Archive=`date +%Y.%m.%d-%H.%M`_$4
tar -cvzf /tmp/$Archive $Source
qvm-move-to-vm $AppVM /tmp/$Archive
echo "mv ~/QubesIncoming/dom0/$Archive $Destination && \
rm ~/QubesIncoming/dom0/qvm-backup_helperscript.sh" >> /tmp/qvm-backup_helperscript.sh
chmod +x /tmp/qvm-backup_helperscript.sh
qvm-move-to-vm $AppVM /tmp/qvm-backup_helperscript.sh
qvm-run $AppVM /home/user/QubesIncoming/dom0/qvm-backup_helperscript.sh

16
code/qvm-copy-to-dom0 Normal file
View file

@ -0,0 +1,16 @@
#!/bin/bash
# qvm-copy-to-dom0
# Copy a file from an AppVM to dom0
# qvm-copy-to-dom0 <AppVM> <Source in AppVM> <Destination in dom0>
# command line parameters
AppVM=$1 # must be present
Source=$2 # must be present
Destination=$3 # optionally
# if no Destination given on commandline use ~/QubesIncoming
if [ -z "$3" ];then mkdir -p ~/QubesIncoming && \
Destination=~/QubesIncoming/$(basename $Source); fi
# copy file from AppVM to dom0
qvm-run --pass-io $AppVM "cat $Source" > $Destination

1
code/test Normal file
View file

@ -0,0 +1 @@
dsa