Просмотр исходного кода

* moved from https://og2k.com/pub/configure/software/ to https://github.com/InstallAndUse/Daily

InstallAndUse 2 лет назад
Родитель
Сommit
b2abbd1ce5

BIN
console-terminal/2018-12-30-bash_navigation.png


+ 12 - 0
console-terminal/files_and_contents.md

@@ -0,0 +1,12 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+locate readme
+
+# find where what
+find / -type f -name readme
+find ./ -type d -exec chmod 0550 {} \;
+
+
+# grep what where
+fgrep -irl ldap *
+fgrep -rl "class Anon" *

+ 31 - 0
console-terminal/screen.md

@@ -0,0 +1,31 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+
+```
+# start with UTF8
+screen -U
+
+# detach screen
+screen C-A d
+
+# detach, recovery
+screen -R -d
+
+# list screens
+screen -list
+
+# create screen
+C-a c
+
+# switch
+C-a space
+C-a bksp
+C-a C-a
+
+# switch to window specific
+C-a 0
+
+# cli
+C-a :
+:utf8 on
+```

+ 31 - 0
console-terminal/terminal-specs.mm

@@ -0,0 +1,31 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+
+<map version="1.0.1">
+<!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->
+<node CREATED="1555253935586" ID="ID_1537057611" MODIFIED="1555394512297" TEXT="terminal specs">
+<node CREATED="1555253949884" ID="ID_1555219066" MODIFIED="1555253962649" POSITION="right" TEXT="group entry"/>
+<node CREATED="1555253964404" ID="ID_1633704055" MODIFIED="1555253982209" POSITION="left" TEXT="shortcuts">
+<node CREATED="1555253983793" ID="ID_325884402" MODIFIED="1555253988425" TEXT="new terminal"/>
+</node>
+<node CREATED="1555253997035" ID="ID_842572250" MODIFIED="1555254003140" POSITION="right" TEXT="highlight command line"/>
+<node CREATED="1555394513279" ID="ID_136193309" MODIFIED="1555394518539" POSITION="left" TEXT="check">
+<node CREATED="1555394524949" ID="ID_1174041355" MODIFIED="1555394526867" TEXT="cmder">
+<node CREATED="1555395019265" ID="ID_1731522207" MODIFIED="1555395025571" TEXT="did not understood"/>
+</node>
+<node CREATED="1555394536623" ID="ID_1371683289" MODIFIED="1555394539741" TEXT="ConEmu">
+<node CREATED="1555396131075" ID="ID_1087491866" MODIFIED="1555396136380" TEXT="far?"/>
+</node>
+<node CREATED="1555394544475" ID="ID_727270782" MODIFIED="1555394550996" TEXT="MobaXterm"/>
+<node CREATED="1555394556402" ID="ID_300181055" MODIFIED="1555394558090" TEXT="Terminus"/>
+<node CREATED="1555394562224" ID="ID_1706447443" MODIFIED="1555394564648" TEXT="ZOC terminal"/>
+<node CREATED="1555394569981" ID="ID_1721958140" MODIFIED="1555394571225" TEXT="mintty"/>
+<node CREATED="1555394576722" ID="ID_1528812261" MODIFIED="1555394580176" TEXT="putty"/>
+<node CREATED="1555394583918" ID="ID_1458564361" MODIFIED="1555394585507" TEXT="Kitty"/>
+<node CREATED="1555394589841" ID="ID_1005974409" MODIFIED="1555394591997" TEXT="Xshell"/>
+<node CREATED="1555394603168" ID="ID_25209965" MODIFIED="1555394604476" TEXT="babun"/>
+<node CREATED="1555394610599" ID="ID_1082091079" MODIFIED="1555394615240" TEXT="Console2"/>
+<node CREATED="1555394621758" ID="ID_523298542" MODIFIED="1555394623171" TEXT="hyper"/>
+</node>
+</node>
+</map>

+ 49 - 0
console-terminal/terminator.md

@@ -0,0 +1,49 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+
+Keybindings
+The following keybindings can be used to control Terminator:
+
+C-S O  Split terminals Horizontally.
+C-S E  Split terminals Vertically.
+C-S Right  Move parent dragbar Right.
+C-S Left   Move parent dragbar Left.
+C-S Up  Move parent dragbar Up.
+C-S Down  Move parent dragbar Down.
+C-S S  Hide/Show Scrollbar.
+C-S F  Search within terminal scrollback
+C-S N or C-Tab
+    Move to next terminal within the same tab, use Ctrl+PageDown to move to the next tab. If cycle_term_tab is False, cycle within the same tab will be disabled
+C-S P or C-S Tab
+    Move to previous terminal within the same tab, use Ctrl+PageUp to move to the previous tab. If cycle_term_tab is False, cycle within the same tab will be disabled
+Alt+Up    Move to the terminal above the current one.
+Alt+Down  Move to the terminal below the current one.
+Alt+Left  Move to the terminal left of the current one.
+Alt+Right Move to the terminal right of the current one.
+C-S C  Copy selected text to clipboard
+C-S V  Paste clipboard text
+C-S W  Close the current terminal.
+C-S Q  Quits Terminator
+C-S X  Toggle between showing all terminals and only showing the current one (maximise).
+C-S Z  Toggle between showing all terminals and only showing a scaled version of the current one (zoom).
+C-Plus   Increase font size. Note: this may require you to press shift, depending on your keyboard
+C-Minus  Decrease font size. Note: this may require you to press shift, depending on your keyboard
+C-Zero (0) Restore font size to original setting.
+F11 Toggle fullscreen
+C-Su R  Reset terminal state
+C-Su G  Reset terminal state and clear window
+Su G Group all terminals so that any input sent to one of them, goes to all of them.
+Su-S G  Remove grouping from all terminals.
+
+= Tabs =
+
+C-S T Open new tab
+Ctrl+PageDown  Move to next Tab
+Ctrl+PageUp  Move to previous Tab
+C-S PageDown  Swap tab position with next Tab
+C-S PageUp  Swap tab position with previous Tab
+
+Super+t  Group all terminals in the current tab so input sent to one of them, goes to all terminals in the current tab.
+Super+Shift+T  Remove grouping from all terminals in the current tab.
+C-S I  Open a new window (note: unlike in previous releases, this window is part of the same Terminator process)
+Super+i  Spawn a new Terminator process

+ 85 - 0
databases/Mysql-MariaDB/Mysql-MariaDB.md

@@ -0,0 +1,85 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+
+## DATABASES
+SHOW DATABASES;
+
+
+## USERS
+# list users
+USE mysql;
+SELECT * FROM user \G;
+
+# create user
+CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
+
+# change password of another user
+ALTER USER 'olduser'@'hostname' IDENTIFIED BY 'newpassword';
+
+# for older than 5.7.5
+USE mysql;
+SET PASSWORD FOR 'user-name-here'@'hostname' = PASSWORD('new-password');
+# or
+UPDATE mysql.user SET Password=PASSWORD('new-password-here') WHERE User='user-name-here' AND Host='host-name-here';
+
+
+## PRIVILEGES
+# GRANT privileges
+```
+GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost';
+GRANT type_of_permission ON database_name.table_name TO ‘username’@'localhost’;
+```
+
+# REVOKE privileges
+REVOKE type_of_permission ON database_name.table_name FROM ‘username’@‘localhost’;
+
+Remember to flush priveleges after GRANT/REVOKE functions!
+```
+FLUSH PRIVILEGES;
+```
+
+# show, who has privileges to specific database
+??
+
+# show, to which databases user has privileges to
+```
+SHOW GRANTS FOR 'xxxx'@'xxx.xxx.xx.xx'
+```
+
+## TABLES
+
+
+
+
+## REPLICATION
+on old mariadb
+```
+
+```
+
+on newer mariadb
+```
+GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%';
+```
+can not perform only for specific table, need to dump and restore
+```
+GRANT REPLICATION SLAVE ON db.table TO 'user'@'host';
+```
+
+# Replication via file
+mysqldump --host 11.22.33.44 -u username -ppassword --master-data=2 \
+--quick --hex-blob --add-drop-table --create-options --extended-insert \
+--disable-keys --allow-keywords mydatabase mytable myview > mdump.sql
+
+
+
+# Set new pass for root
+stop manually started service
+```
+mysqld_safe --skip-grant-tables --skip-networking &
+systemctl stop mariadb
+mysql -u root
+
+FLUSH PRIVILEGES;
+SET PASSWORD FOR 'root'@'localhost' = PASSWORD('pass');
+```

+ 94 - 0
databases/PostgreSQL/PostgreSQL@CentOS.md

@@ -0,0 +1,94 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+# INSTALL
+yum install postgresql-server
+systemctl enable postgresql
+postgresql-setup initdb
+systemctl start postgresql
+
+
+# CONFIG
+vi /var/lib/pgsql/data/pg_hba.conf
+su - postgres
+psql
+\password postgres
+
+# make (user) administrator in database (create databases, roles, grant)
+CREATE USER (user);
+?? GRANT ALL ON DATABASE postgres TO (user);
+\q
+logout
+
+# allow authorization by internal roles of database
+vi /var/lib/pgsql/data/pg_hba.conf
+# insert !!! before 'ident' method in local ipv4
+host    all             all             127.0.0.1/32            md5
+# allow network connections
+host    all             all             0.0.0.0/32              md5
+host    all             all             ::1/128                 md5
+
+# open firewall (system dependent)
+tcp/5432
+
+# connect to database, using local ident
+psql postgres
+
+# connect to database, using other ident (via network)
+psql -h 0 --username=(user) postgres
+
+
+# USERS
+\du               list users:
+\password (user)  change password
+ALTER USER (user) PASSWORD '(pass)';
+# add user
+CREATE USER (user) WITH PASSWORD '(user)123';
+
+# DATABASES
+\l  list
+\c  connect
+\dg list database roles:
+# create db
+# in naming, avoid usage of hyphen ("-"), otherwise use quotes ("")
+CREATE DATABASE "(dbname)" OWNER (user;
+# GRANT ALL PRIVILEGES ON DATABASE "(domain)-local" TO (user);
+GRANT ALL ON DATABASE "(db)" TO (user);
+
+
+
+
+
+# TABLES
+\d         show tables
+\d $table  show columns of table
+# create table
+CREATE TABLE events();
+# add column
+ALTER TABLE events ADD COLUMN event_id bigint PRIMARY KEY;
+# delete column
+ALTER TABLE events DROP COLUMN timestamp_start;
+
+
+# BACKUP
+pg_dump --verbose -h 0 --username (user) -s -f (localfile-schema) "(dbname)"
+pg_dump --verbose -h 0 --username (user) "(dbname)" >> (localfile-data).backup
+
+
+# RESTORE
+psql -h 0 --username (user) "(dbname)" < (dbname).backup
+
+
+
+
+
+# add column with coordinates
+# https://www.postgresql.org/docs/9.1/static/earthdistance.html
+# or
+# http://epsg.io/4326
+# https://postgis.net/docs/manual-2.1/using_postgis_dbmanagement.html#PostGIS_GeographyVSGeometry
+# https://postgis.net/docs/manual-2.1/PostGIS_Special_Functions_Index.html#PostGIS_GeographyFunctions
+https://fedoraproject.org/wiki/PostgreSQL
+
+
+?????
+//   (domain)=# GRANT SELECT ON users TO PUBLIC;

+ 100 - 0
databases/PostgreSQL/PostgreSQL@Debian.md

@@ -0,0 +1,100 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+
+(you)@(domain):/etc$ sudo -u postgres psql postgres
+    postgres=# SHOW hba_file;
+    postgres=# SHOW config_file;
+
+(you)@(domain):/etc$ sudo nano /etc/postgresql/9.3/main/pg_hba.conf
+
+    # "local" is for Unix domain socket connections only
+    #local   all             all                                     peer
+    local   all             all                                     ident
+
+
+    # IPv4 local connections:
+    host    all             all             127.0.0.1/32            md5      
+    host    all             all             0.0.0.0/0               md5
+    hostssl all             all             0.0.0.0/0               md5
+
+    # IPv6 local connections:
+    host    all             all             ::1/128                 md5
+
+(you)@(domain):/etc$ sudo nano /etc/postgresql/9.3/main/postgresql.conf
+    #listen_addresses = 'localhost'         # what IP address(es) to listen on;
+    listen_addresses = '*'         # what IP address(es) to listen on;
+
+
+(you)@lab:~$ psql -h (domain) (domain) postgres
+Password for user postgres:
+psql (9.3.9)
+SSL connection (cipher: DHE-RSA-AES256-GCM-SHA384, bits: 256)
+Type "help" for help.
+
+(domain)=#
+
+
+adding users:
+
+list users:
+\du
+
+list databases:
+\l
+
+list database roles:
+\dg  
+
+log:
+(you)@(domain):~$ sudo tail -f /var/log/postgresql/postgresql-9.3-main.log
+
+(you)@(domain):~$ sudo service postgresql restart
+
+(you)@(domain):~$ sudo -u postgres psql postgres
+psql (9.3.9)
+Type "help" for help.
+
+postgres=# CREATE USER ksr WITH PASSWORD 'ksr123ksr123';
+CREATE ROLE
+postgres=# GRANT ALL PRIVILEGES ON DATABASE (domain) TO ksr;
+GRANT
+
+
+postgres=# CREATE USER "(user)" WITH PASSWORD '(pass)';
+CREATE ROLE
+postgres=# GRANT ALL PRIVILEGES ON DATABASE "(domain)-current" TO "www-data";
+GRANT
+postgres=#
+
+$ sudo apt-get install php5-pgsql  
+
+postgres=# REVOKE ALL PRIVILEGES ON DATABASE (domain) FROM wwwdata;
+postgres=# DROP USER wwwdata;
+
+postgres=# CREATE DATABASE "(domain)-current" WITH OWNER=(user);
+    CREATE DATABASE
+postgres=# \l
+                                    List of databases
+      Name      |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   
+----------------+----------+----------+-------------+-------------+-----------------------
+ (d)            | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/postgres         +
+                |          |          |             |             | postgres=CTc/postgres+
+                |          |          |             |             | (you)=CTc/postgres   +
+                |          |          |             |             | xxx=CTc/postgres
+ (d)-current    | xxx      | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
+ postgres       | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
+ template0      | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
+                |          |          |             |             | postgres=CTc/postgres
+ template1      | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
+                |          |          |             |             | postgres=CTc/postgres
+(5 rows)
+
+postgres=#
+(domain)-current=# GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO "www-data";
+(domain)-current=# GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO "www-data";
+
+//connect to DB
+\c (domain)
+
+// list tables
+\dt

+ 82 - 0
databases/PostgreSQL/PostgreSQL@Fedora28.md

@@ -0,0 +1,82 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+# prepare
+yum install \
+  postgresql-server \
+  postgresql-contrib
+
+# init
+postgresql-setup initdb
+
+# enable and start
+systemctl enable postgresql
+systemctl start postgresql
+
+# connect
+sudo -u postgres psql postgres
+
+# set password for user "postgres"
+\password postgres
+# re-login
+
+# show config files
+postgres=# SHOW hba_file;
+ /var/lib/pgsql/data/pg_hba.conf
+postgres=# SHOW config_file;
+ /var/lib/pgsql/data/postgresql.conf
+
+# enable connections
+vi  /var/lib/pgsql/data/pg_hba.conf
+# comment everything!.
+# for local access add only ipv4 with md5 password (just created)
+  host    all             all             127.0.0.1/32            md5
+
+# check connection
+psql -h 127.0.0.1 -U postgres
+
+
+# FIREWALL
+$ # make it last after reboot
+$ firewall-cmd --permanent --add-port=5432/tcp
+$ # change runtime configuration
+$ firewall-cmd --add-port=5432/tcp
+
+
+# SELinux (if DB location changes)
+$ semanage fcontext -a -t postgresql_db_t "/my/new/location(/.*)?"
+$ semanage port -a -t postgresql_port_t -p tcp 5433
+# setsebool -P httpd_can_network_connect_db on
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+sudo nano /etc/postgresql/9.3/main/pg_hba.conf
+    # "local" is for Unix domain socket connections only
+    #local   all             all                                     peer
+    local   all             all                                     ident
+
+    # IPv4 local connections:
+    host    all             all             127.0.0.1/32            md5
+    host    all             all             0.0.0.0/0               md5
+    hostssl all             all             0.0.0.0/0               md5
+
+    # IPv6 local connections:
+    host    all             all             ::1/128                 md5
+
+sudo nano /etc/postgresql/9.3/main/postgresql.conf
+    #listen_addresses = 'localhost'         # what IP address(es) to listen on;
+    listen_addresses = '*'         # what IP address(es) to listen on;
+
+(you)@lab:~$ psql -h (domain) (domain) postgres

+ 126 - 0
databases/PostgreSQL/PostgreSQL_Graphic_Management_tool_for_win10.md

@@ -0,0 +1,126 @@
+#
+# postgresql graphic management tool
+#
+
+#
+# history:
+# 2020 06 09  + initial start
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+#
+
+# specification/requirements:
+    + find by pattern and delete entries
+    + not resident (as pgAdmin), boot on demand
+    + tables' manipulation (useful in inital state)
+    + can cost, but not astronomical amounts and not subscription based payment model
+    + replication monitoring
+    + continious development
+
+
+#
+# references
+#
+https://wiki.postgresql.org/wiki/PostgreSQL_Clients
+https://www.postgresql.org/download/products/1-administrationdevelopment-tools/
+https://pgdash.io/blog/postgres-gui-tools.html
+https://www.slant.co/topics/7283/~gui-tools-for-postgresql-on-windows
+
+
+# PostgreSQL Maestro (AnySQL Maestro)
+https://www.sqlmaestro.com/products/postgresql/maestro/
+
+
+# Valentina Studio
+https://www.valentina-db.com/en/compare-free-vs-pro
+cross-platform
+? why bonjour service?
+? can not see list of databases available?
+
+
+# SQL Workbench/J
+https://www.sql-workbench.eu/
+(free)
+- need to downloadDB drivers separately
+- no install / unpack&run
+
+
+# DbVisualizer
+https://www.dbvis.com/features/feature-list/
+- free version: can not manage tables
+
+
+# DBeaver
+(Free community, $149 standard license, open source)
+Java/Eclipse-based Desktop GUI
+
+
+# Navicat
+($89 up to $239 per license)
+
+
+# DataGrip
+($89 to $199 per year)
+    ? differ
+
+
+# OmniDB
+(free, open source)
+Browser-based desktop GUI
+
+
+# ClusterControl
+two versions: community and enterprise editions
+
+
+# pgweb
+Single-binary Go-based web server
+
+
+# Metabase
+BI tool, server install
+
+
+# Redash
+BI tool, server install
+
+
+# SQLGate
+
+
+# Postico
+
+
+# Database .NET
+
+
+# TablePlus (for windows and macos)
+(purchased it)
+
+
+# SQL workbench.
+
+
+# Apache Superset
+
+
+# franchise
+- wab-based
+
+
+# pgDash
+- 100 USD/mo
+
+
+# Adminer (phpMinAdmin) alternative to phpMyAdmin
+- written in php, web-based
+
+
+# Blazer
+- ruby
+
+
+# pgAdmin
+(free, open source)
+web-based
+Browser-based desktop GUI
+disappointed

+ 38 - 0
databases/PostgreSQL/PostgreSQL_with_long_names@MacOS.md

@@ -0,0 +1,38 @@
+#
+# postgres with columns's longnames 512-bit
+#
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+
+
+# download stable source from https://www.postgresql.org/ftp/source/
+cd Downloads
+tar -xzvf postgresql-12.4.tar.gz
+vi src/include/pg_config_manual.h
+    #define NAMEDATALEN 512
+./configure
+# download and install xcode
+make
+su
+make install
+
+/usr/sbin/sysadminctl -addUser postgres
+mkdir /usr/local/pgsql/data
+chown postgres /usr/local/pgsql/data
+su - postgres
+/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
+/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start
+
+# console
+/usr/local/pgsql/bin/psql
+
+# create user (match OS's username) and give rights
+CREATE USER (you)
+
+# from another terminal, should work
+/usr/local/pgsql/bin/psql -U postgres postgres
+
+# include into PATHs
+su
+vi /etc/paths
+    /usr/local/pgsql/bin

+ 41 - 0
databases/PostgreSQL/install-pgAdmin4@Fedora28.md

@@ -0,0 +1,41 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+disappointed
+consider using alternatives, TablePlus is good.
+
+### # #
+# prepare
+### # #
+
+# get repo for distro
+https://yum.postgresql.org/repopackages.php
+https://download.postgresql.org/pub/repos/yum/11/fedora/fedora-28-x86_64/pgdg-fedora11-11-2.noarch.rpm
+rpm -ivh pgdg-fedora11-11-2.noarch.rpm
+
+# install (will install httpd)
+yum install pgadmin4
+
+# add extra configs location to apache
+vi /etc/httpd/conf/httpd.conf
+:$
+IncludeOptional /data/www/conf/*.conf
+
+# conf virtual conf file
+mkdir -p /data/www/conf
+cp /etc/httpd/conf.d/pgadmin4.conf.sample /data/www/conf/01-pgadmin.conf
+vi /data/www/conf/01-pgadmin.conf
+
+# SElinux
+#(not needed, yet)semanage fcontext -a -t httpd_sys_content_t "/data/www(/.*)?"
+semanage fcontext -a -t httpd_config_t      "/data/www/conf(/.*)?"
+semanage fcontext -l | grep /data/www
+restorecon -R -v /data/www
+
+# when logs are clear, connect
+http://localhost/pgadmin4
+
+
+
+
+https://linuxhint.com/install-pgadmin4-ubuntu/
+http://yallalabs.com/linux/how-to-install-pgadmin-4-in-server-mode-on-ubuntu-16-04-lts/

+ 3 - 0
databases/PostgreSQL/psycopg2@MacOS.md

@@ -0,0 +1,3 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+pip3 install psycopg3

BIN
editors/atom.md


+ 16 - 0
files/file-copy-move-utlis@MacOS.md

@@ -0,0 +1,16 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+requirements:
+    hash check
+    collision decisions
+    delete after move, one by one (not after batch is completed/broken)
+
+file copy/move utilities for mac
+    ultracopier (successor of supercopier)
+    minicopier
+
+file managers
+    path finder 9
+    xfile
+    double commander
+    wal commander

+ 1 - 0
mail/alpine.md

@@ -0,0 +1 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A

+ 5 - 0
mail/enigmail.md

@@ -0,0 +1,5 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+#thunderbird/seamonkey extension
+
+https://www.enigmail.net/index.php/en/download

+ 57 - 0
mail/evolution.md

@@ -0,0 +1,57 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+# assumed that evolution is installed and working properly
+
+
+### ## #
+# openpgp
+### ## #
+
+evolution, edit, preferences,
+mail accounts,
+select account, edit (double click)
+security, Pretty Good Privacy (OpenPGP)
+OpenPGP Key Id: (insert fingerprint here, without spaces)
+select signing algorithm: default
+
+# recipient has several email addresses in keypair,
+# evolution refuses to send
+# set keypair trust
+gpg2 --edit-key BB8F40F041619xxxx47754xxxx8A11 trust
+# 5 = I trust ultimately
+
+
+### ## #
+# p12 MIME
+### ## #
+
+evolution, edit, preferences,
+certificates, your certificates, import
+(pass),
+mail accounts,
+select account, edit (double click)
+security, Secure MIME,
+  signing certificate, [select], select cert, [ok]
+  encryption certificate, [select], select cert, [ok]
+select signing algorithm: default
+
+
+
+Evolution issue:
+Could not create message.
+you may need to select different mail options.
+Detailed error: Peer's Certificate issuer is not recognized. (-8179) - Cannot add SMIMEEncKeyPrefs attribute
+
+https://askubuntu.com/questions/36300/error-when-sending-signed-mail-in-evolution
+edit, [x] trust this ca to identify email users
+
+# if you did not found your issuer in list, list certs
+certutil -d sql:$HOME/.pki/nssdb -L
+
+# find your certs nickname, set as trusted
+certutil -d sql:$HOME/.pki/nssdb -M -n "(nickname)" -t Pu,Pu,Pu
+
+# verify
+certutil -d sql:$HOME/.pki/nssdb -L
+
+# restart evolution

+ 6 - 0
mail/install-fetchmail-ssl-notsigned.md

@@ -0,0 +1,6 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+(you)@lab2:~$ c_rehash .fetchmail_certs/
+(you)@lab2:~$ mkdir -p .fetchmail/ssl
+(you)@lab2:~$ echo | openssl s_client -connect (server):993 -showcerts 2>/dev/null | sed -ne '/BEGIN CERT/,/END CERT/p' > .fetchmail/ssl/avaruus.pem
+(you)@lab2:~$ openssl x509 -in .fetchmail/ssl/avaruus.pem -noout -md5 -fingerprint

+ 120 - 0
mail/mailman.md

@@ -0,0 +1,120 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+https://www.howtoforge.com/how-to-install-and-configure-mailman-with-postfix-on-debian-squeeze
+https://help.ubuntu.com/community/Mailman
+
+installing mailman
+
+sudo apt-get install mailman
+select ALL languages (english as well)
+select default language
+sudo newlist mailman
+sudo service mailman start
+
+sudo nano /etc/mailman/mm_cfg.py
+sudo /usr/lib/mailman/bin/genaliases
+
+sudo postconf -e 'relay_domains = lists.(domain)'
+sudo postconf -e 'transport_maps = hash:/etc/postfix/transport'
+sudo postconf -e 'mailman_destination_recipient_limit = 1'
+sudo postconf -e 'alias_maps = hash:/etc/aliases, hash:/var/lib/mailman/data/aliases'
+
+check:
+sudo nano /etc/postfix/master.cf
+
+    mailman   unix  -       n       n       -       -       pipe
+      flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
+      ${nexthop} ${user}
+
+sudo nano /etc/postfix/transport
+    lists.(domain) mailman:
+
+sudo postmap -v /etc/postfix/transport
+
+sudo nano /etc/aliases
+    mailman:              "|/var/lib/mailman/mail/mailman post mailman"
+    mailman-admin:        "|/var/lib/mailman/mail/mailman admin mailman"
+    mailman-bounces:      "|/var/lib/mailman/mail/mailman bounces mailman"
+    mailman-confirm:      "|/var/lib/mailman/mail/mailman confirm mailman"
+    mailman-join:         "|/var/lib/mailman/mail/mailman join mailman"
+    mailman-leave:        "|/var/lib/mailman/mail/mailman leave mailman"
+    mailman-owner:        "|/var/lib/mailman/mail/mailman owner mailman"
+    mailman-request:      "|/var/lib/mailman/mail/mailman request mailman"
+    mailman-subscribe:    "|/var/lib/mailman/mail/mailman subscribe mailman"
+    mailman-unsubscribe:  "|/var/lib/mailman/mail/mailman unsubscribe mailman"
+
+sudo chown root:list /var/lib/mailman/data/aliases
+sudo chown root:list /etc/aliases
+sudo newaliases
+sudo service postfix restart
+sudo service mailman restart
+
+testing:
+sudo apt-get install mutt
+nano .muttrc
+    set mbox_type=Maildir
+    set folder="~/Maildir"
+    set mask="!^\\.[^.]"
+    set mbox="~/Maildir"
+    set record="+.Sent"
+    set postponed="+.Drafts"
+    set spoolfile="~/Maildir"
+mutt
+
+
+sudo cp /etc/mailman/apache.conf /etc/apache2/sites-available/mailman.conf
+sudo nano /etc/apache2/sites-available/mailman.conf
+  uncomment <VirtualHost>, check
+sudo mkdir /var/www/lists
+sudo a2ensite mailman.conf
+sudo service apache2 restart
+
+sudo nano /etc/mailman/mm_cfg.py
+    DEFAULT_URL_PATTERN = 'http://%s/'
+
+sudo a2enmod cgid
+
+
+sudo newlist trac-(domain)
+sudo list_lists
+
+echo "(you)@(domain)" | sudo add_members -r - trac-(domain)
+sudo list_members trac-(domain)
+
+
+
+
+mailman.conf
+
+
+<VirtualHost *>
+    ServerName (domain)
+    DocumentRoot /var/www/
+    ErrorLog /var/log/apache2/lists-error.log
+    CustomLog /var/log/apache2/lists-access.log combined
+
+    <Directory /var/lib/mailman/archives/>
+        Options FollowSymLinks
+        AllowOverride None
+    </Directory>
+
+    Alias /pipermail/ /var/lib/mailman/archives/public/
+    Alias /images/mailman/ /usr/share/images/mailman/
+    ScriptAlias /admin /usr/lib/cgi-bin/mailman/admin
+    ScriptAlias /admindb /usr/lib/cgi-bin/mailman/admindb
+    ScriptAlias /confirm /usr/lib/cgi-bin/mailman/confirm
+    ScriptAlias /create /usr/lib/cgi-bin/mailman/create
+    ScriptAlias /edithtml /usr/lib/cgi-bin/mailman/edithtml
+    ScriptAlias /listinfo /usr/lib/cgi-bin/mailman/listinfo
+    ScriptAlias /options /usr/lib/cgi-bin/mailman/options
+    ScriptAlias /private /usr/lib/cgi-bin/mailman/private
+    ScriptAlias /rmlist /usr/lib/cgi-bin/mailman/rmlist
+    ScriptAlias /roster /usr/lib/cgi-bin/mailman/roster
+    ScriptAlias /subscribe /usr/lib/cgi-bin/mailman/subscribe
+    ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
+</VirtualHost>
+
+
+(you)@(domain):~/temp-mailman$ sudo nano fix_url.py
+    DEFAULT_URL_PATTERN = 'https://%s/mailman/'
+(you)@(domain):~/temp-mailman$ sudo withlist -l -r fix_url mailman

+ 14 - 0
mail/mutt.md

@@ -0,0 +1,14 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+purge (all) letters
+```
+S-D . (dot) [enter]
+q [enter]
+```
+
+or by tagging and applying action to tagged lettersdq
+```
+T . (dot) [enter]
+t d
+q [enter]
+```

+ 27 - 0
mail/php mail via msmtp.md

@@ -0,0 +1,27 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+howto: sending mail using apache/php mail() via msmtp
+
+(you)@lab2:~$ echo -e "From: alice@example.com \n\
+> To: bob@domain.com \n\
+> Subject: Hello World \n\
+> \n\
+> This email was sent using MSMTP via Gmail/Yahoo." >> sample_email.txt
+(you)@lab2:~$ emacs sample_email.txt
+(you)@lab2:~$ cat sample_email.txt
+From: alice@example.com
+To: (sender)@(host).com
+Subject: Hello World
+
+This email was sent using MSMTP via Gmail/Yahoo.
+
+(you)@lab2:~$ cat sample_email.txt | msmtp --debug -a (domain) (sender)@(host).com
+(you)@lab2:~$ sudo cp -p .msmtprc /etc/php5/apache2/.msmtp_php
+(you)@lab2:~$ sudo chown www-data:www-data /etc/php5/apache2/.msmtp_php
+
+(you)@lab2:~$ sudo pico /etc/php5/apache2/php.ini
+    sendmail_path = "/usr/bin/msmtp -C /etc/php5/apache2/.msmtp_php --logfile /var/log/msmtp.log -a (domain) -t"
+
+
+(you)@lab2:~$ sudo touch /var/log/msmtp.log
+(you)@lab2:~$ sudo chown www-data:www-data /var/log/msmtp.log

+ 16 - 0
mail/thunderbird.md

@@ -0,0 +1,16 @@
+# 2022 03 19  + published on https://github.com/InstallAndUse/Daily /A
+
+Know-how:
+    * hold shift, when "reply"-ing or "write"-ing to switch from HTML to plain-text writing mode.
+
+Thunderbird Addons (plugins, extensions) used and liked:
+    Enigmail
+    ImportExportTools NG
+    Manually sort folders
+    Owl for Exhcange
+        (purchased it)
+    Remove Duplicate Messages (Alternate)
+    ThreadVis
+    Toggle Word Wrap
+    CardBook
+        CardDAV contacts synchronization (from NextCloud to ThunderBird)