Heisenberg - Digital Alchemist, Software Architect, Automation Specialist and Mechanical Engineer.
Labels
Wednesday, 11 December 2019
Java Component tab order
Wednesday, 4 December 2019
multiple JAR files signed with different certificates
Basically, if I have multiple jar files, some of which are signed by a different certificate, then we need to create separate jnlp files for these resources.
TLDR - Signing each jar with the same certificate, seems to work, regardless if it has been signed before.
Sunday, 1 December 2019
Code signing with Certum and SimplySign
Sensitive or personal information has been removed from this post.
Friday, 22 November 2019
Updating java GUI components
see also: java-threads.html
Connect to Windows share from Linux command line.
smbclient //IP_ADDRESS/SHARE_NAME -U username
smbclient //192.168.254.198/public -U username
Then you will be promted for the password and find yourself at the smb: \> prompt.
You can then use;
ls for a listing of files
get filename to grab a file
cd folder to change directory
...etc
exit to exit
Thursday, 21 November 2019
Java Threads and populating a list in real time
{
@Override
public void run()
{
//do Work here...
}
});
t.start();
Java jList
Thursday, 14 November 2019
Setup Postgres on Slackware
TODO: Add Slackware install
Wednesday, 13 November 2019
Python reading file error - 'utf-8' codec can't decode byte
When reading in a file and getting errors such as example:
'utf-8' codec can't decode byte 0xa3 in position 2897: invalid start byte
Add errors='ignore' as per the following example:
with open(fname,"r", errors='ignore') as fo:
Tuesday, 5 November 2019
Saturday, 2 November 2019
Install docker on Slackware
https://slackware.pkgs.org/
quick notes
google-go-lang-1.10.2-x86_64-1_slonly.txz
tini-0.13.0_949e6fa-x86_64-1_slonly.txz
docker-proxy-20180412_c15b372-x86_64-1_slonly.txz
libseccomp-2.3.3-x86_64-1_slonly.txz
runc-1.0.0_rc5-x86_64-1_slonly.txz
containerd-1.0.3-x86_64-1_slonly.txz
docker-18.03.1-x86_64-1_slonly.txz
Revised Sep 2024
Revisited Aug 2024
The below is related to Slackware 15 and used the sbopkg method, see here for more information about getting sbopkg up and running.
So, I set about building Docker using the following order:
which is required to satisfy dependencies.Once google-go-lang was installed, the build or runc failed and I found my way to the solution [here]. Essentially, you should build and install google-go-lang and then log out and back in before continuing with runc.
Once the above was done, or running the shell script at /etc/profile.d/go.sh then was good to continue (note, I done this using my current user, with and without sudo and also as root. I eventually had to open a new terminal to get it to work without error).
Once complete, do;
sudo groupadd -r docker
sudo usermod -a -G docker <username>
Note:
In hindslight, this should be added to the above packages order, after docker itself.
References
https://slackbuilds.org/repository/15.0/system/docker/
Change form GPT to MBR partition types
disk /dev/sda (assuming the drive is sda)
Then use the x option (extra functionality)
then use option z to destroy GPT
Now you can use cfdisk /dev/sda as per normal and choose DOS
Tested on Slackware 14.2
Wednesday, 4 September 2019
change eth1 to eth0
removing the following file and rebooting resolved;
/etc/udev/rules.d/70*
Also this file can be edited and udevadm trigger refreshes.
This may also apply to /dev/hda /dev/hdb /dev/sda /dev/sdb etc (to be verified)
Friday, 23 August 2019
mount CD on RHEL 7 Linux
Create a mount point if it doesn't already exist.
mount /dev/sr0 /mnt/cdrom
mount /dev/cdrom /mnt/cdrom (might work)
Thursday, 22 August 2019
RHEL Network configuration
The primary network configuration files are as follows:
/etc/hosts
- Resolve host names that cannot be resolved any other way, by DNA for example.
/etc/resolv.conf
- This file specifies the
IP
addresses ofDNS
servers and the search domain. /etc/sysconfig/network
- This file specifies routing and host information for all network interfaces.
/etc/sysconfig/network-scripts/ifcfg-interface-name
- For each network interface, there is a corresponding interface configuration script. Each of these files provide information specific to a particular network interface.
Change Linux run level
Wednesday, 7 August 2019
Configure apache to run python scripts
Uncomment LoadModule
<IfModule !mpm_prefork_module>
LoadModule cgid_module lib64/httpd/modules/mod_cgid.so
</IfModule>
<IfModule mpm_prefork_module>
LoadModule cgi_module lib64/httpd/modules/mod_cgi.so
</IfModule>
Add ExecCGI
Options Indexes FollowSymLinks ExecCGI
Add .py
AddHandler cgi-script .cgi .py
Tuesday, 2 July 2019
When lilo fails to boot or there's a problem with MBR
Boot with Slackware install DVD, tested with 13.37 (only one I had to hand).
At boot prompt, follow instructions to boot existing system, something like;
huge.s root = /dev/sda1
Once system boots, we need to do the following:
Set keyboard map and login as root (no password).
cfdisk shows partitions (note root partition)
mount /dev/sda1 /mnt # where sda1 is the root partition. (discovered from cfdisk)
No need to mount any other partitions unless you need to make other changes.
The following was not needed but is documented as part of the process:
mount -o bind /dev /mnt/dev
mount -o bind /proc /mnt/proc
mount -o bind /sys /mnt/sys
chroot /mnt /bin/bash
Once in here you can edit /etc/lilo.conf
Note, in the case of SCS, location of boot bitmap needed to be changed to /boot/...
I choose to have at least 2 working kernels listed in there one at /dev/hda1 and one at /dev/sda2
this was due to the system showing current disk as sda and I knew original system showed as hda
I leave boot= flag untouched.
install lilo using lilo -b /dev/sda
and reboot, removing Slackware installation DVD
One of the kernel images should boot and then change lilo.conf back to normal and install lilo using lilo
UPDATE: 09 JULY 2021
Tuesday, 25 June 2019
Linux mouse gpm
gpm -m /dev/input/mice -t imps2
https://www.linuxquestions.org/questions/slackware-14/setting-up-a-usb-mouse-in-slackware-401496/
put the following in rc.gpm and make bootable - chmod +x /etc/rc.d/rc.gpm
#!/bin/sh
# Start/stop the GPM mouse server:
if [ "$1" = "stop" ]; then
echo "Stopping gpm..."
gpm -k
else # assume $1 = start:
echo "Starting gpm..."
gpm -m /dev/mouse -t imps2
fi
Finally do ln -si /dev/input/mice /dev/mouse to create link
For usb /dev/mouse points to /dev/input/mice
For PS/2 /dev/mouse points to /dev/psaux
Optionally add/comment the following lines in /etc/X11/XF86Config for usb
#Option "Protocol" "PS/2"
#Option "Device" "/dev/psaux"
Option "Protocol" "imps/2"
Option "Device" "/dev/mouse"
Slightly related note: for keyboard, the following should be present:
#Option "XkbLayout" "us"
Option "XkbLayout" "uk"
Monday, 24 June 2019
Is network card is detected under linux
or
lspci -vv | grep Ethernet
Tuesday, 18 June 2019
backup and restore mysql
Backup;
mysqldump -u [username] -p [databaseName] > [filename]-$(date +%F).sql
Restore;
mysql -u [username] -p [databaseName] < [filename].sql
See here for more details...
Saturday, 27 April 2019
Categorical and Continuous Variables - Nominal, Dichotomous, Ordinal, Interval, Ratio
Categorical and Continuous Variables
Friday, 22 February 2019
Linux - remount filesystem rw
lilo.conf - Check boot parameter is correct /dev/sd* matches where drive is connected.
run lilo from /boot (if need be use lilo -b /dev/sd* where sda is the drive not the partition.
Check root = /dev/sd* is the correct partition
Check /etc/fstab has correct /dev/sd* entries
Sunday, 3 February 2019
Wednesday, 23 January 2019
Normalization Normal forms
No repeating columns or columns contain only a single value.
Second Normal Form 2NF
As per 1NF but each non PK value can be uniquely identified by the PK
Third Normal Form 3NF
As per 2NF but each no PK value can ONLY be identified by the PK
Comparison between SQL and Pandas
Comparison with SQL
Thursday, 10 January 2019
VirtualBox command line. Removing innaccessable VMs change machine location
Then;
VBoxManage list vms (this lists virtual machines)
VBoxManage unregistervm ********* (where *** is the number of the VM as shown by the previous command).
To change default location of VM's
vboxmanage setproperty machinefolder /path/to/directory/
Note use path in quotation marks if folder needs a space, example;
vboxmanage setproperty machinefolder "/var/VirtualBox VMs"
Friday, 4 January 2019
Mac add Open With to Right Click menu
- Open
Automator
and selectService
document type. - Select
Files and Folders
in the topService receives selected
menu - Search for and select the
Open Finder Items
action. - Now select
TextEdit
inOpen with:
- Save the service with a name you want to see in the menus
- Right-clicking the file > Services
Tuesday, 1 January 2019
Renaming a file to include date
mv myfile.txt myfile_$(date + %d-$m-%Y).txt
This can be useful when creating backup files.
A script called by cron like the below might be useful.
#!/bin/bash
rm myfile_*.tar
tar -cf myfile.tar myfile.txt && mv myfile.tar myfile_$(date + %d-$m-%Y).tar