Saturday, 26 April 2014

abcde - good CD ripper and itunes

By default, all the tracks will be converted to ogg file by executing:
abcde

One can change it into mp3 file by:
abcde -o mp3:"-b 256"

If only several file require to be converted, one can do:
abcde -o mp3:"-b 256" 1,2,3-7



Delete music with missing file in itunes:
There's a trick I just tried with itunes 11, I don't remember the details for a previous (better) version of itunes.

To summerize the trick I detail bellow it's to use a video field to set for all your music tracks, then have itunes set it and check all tracks, itunes will set it only for tracks with a valid file and will update the track state to show whe it hasn't a file. Then you can use that field value to sort tracks of you library music and delete all tracks with a missing file.

So for itunes 11.0.1:
- Select your library in itunes to see all tracks.
- Then choose the tracks presentation.
- Then in Prensentation options add the serie (video section)
- Sort the list by Season to check it's not a used field, it shouldn't as its music.

If the season field isn't used then you can use the trick :
- Select all in the list
- Get information
- Go in Video Tab
- In season number enter 1
- Then check ok.
- Then let itunes set the field for all tracks and it will check them all. It takes times if you have many tracks.
- Once it's finished just sort the list by season, and all tracks with no season are those with missing file. Well perhaps also those with a protected file that can't be changed. Ididn't tested that last point but you could give a visual check to the elements to be sure that all are showing the icon for missing file.

So with that sort you can select all the tracks with missing file to delete them.

Then you can restore the season field to none to reset all valid tracks:
- Select all tracks in your library
- Righ click to get information
- Select video tab and in season number field erase the 1 you set before.
- Ok to apply.

Well it's neither fast nor without risks of human errors, a paid software well designed and well programed is a wiser choice, but that manual process is free of money (well if time isn't money).

The small adventage I can see is in that way you are sure that itunes will check all files of your library.

EDIT: Take care when you do the operation that all the removable disk you are using to store files in you itunes are well connected. That's this sort of little traps a human could forget check and it could generate a little disaster. :-)

CMUS - the best music player

Some useful command used in CMUS


Load playlist named diablo.pl
Load -p diablo.pl
comments: To find where the current folder is, go to file browser(choose 5)

Save play list to diablo.pl
Save-p diablo.pl

Add file to playlist, simply press y


cmus-remote -Q  get a series of information on the playing song





Tuesday, 18 February 2014

Installing and maintaining Gentoo box


1. Touch excursion from nonmultilib to multilib (2013)
After installed gentoo into T5500 machine, I found there are several problem that the system can not handle:

 a. three files can not be updated: (a) sandbox (b) glibc (c) gcc. all of the three are said to be updated due to enabled multilib. once glibc failed, it says stub, x86 compile failed
 b. skype can not be opened up, even if it is properly well installed.
 c. the opensource virtualbox can not be compilled. only the binary version can be installed
 The reason of having this problem, is because the base system I installed is non-multilib. It is found from many websites that changing from non-multilib to multilib is very difficult. The easist way to solve this problem is to reinstall gentoo using another stage3 tarball Although some peole say one can establish another glibc from scratch, this may lead to the problem very complex finally.

2.  can not properly disable nouveau driver
   After the system installed in chroot stage, systemd can not be properly booted, mainly due to two symptons:
a. The running text shows that nouveau has been loaded
b. The systemds hangs at the stage where the following lines are repeatedly showing up:
Jun 4 03:16:56 histon kernel: [ 1067.937418] NVRM: The NVIDIA probe routine was not called for 2 device(s). 
Jun 4 03:16:56 histon kernel: [ 1067.937424] NVRM: This can occur when a driver such as nouveau, rivafb, 
Jun 4 03:16:56 histon kernel: [ 1067.937426] NVRM: nvidiafb, or rivatv was loaded and obtained ownership of 
Jun 4 03:16:56 histon kernel: [ 1067.937428] NVRM: the NVIDIA device(s). 
Jun 4 03:16:56 histon kernel: [ 1067.937432] NVRM: Try unloading the conflicting kernel module (and/or 
Jun 4 03:16:56 histon kernel: [ 1067.937434] NVRM: reconfigure your kernel without the conflicting 
Jun 4 03:16:56 histon kernel: [ 1067.937435] NVRM: driver(s)), then try loading the NVIDIA kernel module 
Jun 4 03:16:56 histon kernel: [ 1067.937437] NVRM: again. 
Jun 4 03:16:56 histon kernel: [ 1067.937439] NVRM: No NVIDIA graphics adapter probed! 
    This is probably due to the reason that nouveau has been loaded before nvidia driver starts to load. The following steps can solve this problem:

a. make sure nouveau is disabled by running
# echo "blacklist nouveal" >> /etc/modprobe.d/blacklist.conf
b. make sure that xorg-drivers has nvidia enabled:

 [ebuild   R    ] x11-base/xorg-drivers-1.14  INPUT_DEVICES="evdev keyboard mouse -acecad -aiptek -elographics -fpit -hyperpen -joystick -mutouch -penmount -synaptics -tslib -vmmouse -void -wacom" VIDEO_CARDS="nvidia -apm -ast -chips -cirrus -dummy -epson -fbdev -fglrx (-geode) -glint -i128 (-i740) -intel -mach64 -mga -modesetting -neomagic -nouveau -nv (-omap) (-omapfb) -qxl -r128 -radeon -radeonsi -rendition -s3virge -savage -siliconmotion -sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx) -tdfx -tga -trident -tseng -v4l -vesa -via -virtualbox -vmware (-voodoo)" 0 kB
c. follow the instuctions listed in these websites:
http://wiki.gentoo.org/wiki/X_server
https://wiki.gentoo.org/wiki/NVidia/nvidia-drivers
https://wiki.gentoo.org/wiki/Xorg/Configuration

d. copy xorg.conf into /etc/X11/xorg.conf.d

Then it should be working

3.  common packages required to be installed

# emerge -av --keep-going xorg-server xorg-drivers media-libs/mesa systemd i3lock i3   emacs  rxvt-unicode skype dropbox gnome nvidia-drivers scrot xorg-server xorg-drivers vlc mplayer gimp inkscape fuse htop adobe-flash alsa-utils  gnumeric  virtualbox-guest-additions i3status openssh rdesktop sshfs-fuse R mercurial ranger cmus ntfs3g feh mupdf exiftool ifuse gentoolkit dev-python/pip id3 id3v2 cdparanoia abcde virtualbox-extpack-oracle texlive dvipng dvisvgm texlive-latexextra  matplotlib eix openmpi hdf5 paraview gdb p7zip gv openntpd exiftool screen
4. files required to backup
/etc/portage/{make.conf, package.use,package.keywords}
/usr/src/linux/.config
/etc/fstab

5. webkit-gtk is time consuming to emerge
In my laptop, installing webkit-gtk can take ages, to avoid that, I decided not emerge this atom. First, I have checked the atoms that are dependent on webkit-gtk. i.e.,

query depends webkit-gtk

emerge -C gnome-extra/gnome-documents-3.8.5 gnome-extra/sushi-3.10.0 gnome-extra/yelp-3.8.1 gnome-extra/zenity-3.8.0 media-gfx/gimp-2.8.10-r1 media-gfx/shotwell-0.15.1 media-sound/rhythmbox-3.0.2 net-im/empathy-3.8.6 net-libs/gnome-online-accounts-3.10.4 net-libs/libproxy-0.4.11-r1 webkit-gtk

6. list of useful binary package
It is very time consuming to install all the package in source form. To make sure the labtops can be able to enjoy gentoo, I have listed all the useful binary package so that the compilling time can be reduced significantly.
google-chrome firefox-bin libreoffice-bin thunderbird-bin virtualbox-bin icedtea-bin openfoam-bin
7. locations where files should be cleaned
This is the location where source file are downloaded

/usr/portage/distfiles
or clean distfiles using the following command directly.
# eclean-dist
See a list of installed package by their size:
# qsize -a -k | sort -n -k 6
8. get ip address for enp6s0
# dhcpcd enp6s0
or
# dhclient enp6s0
9. change emul-linux to abi (2015-06-22)
Users should be find that emul-linux is gone, what replaces it is abi.
https://wiki.gentoo.org/wiki/Multilib_System_without_emul-linux_Packages
https://forums.gentoo.org/viewtopic-p-7728476.html?sid=54b9db45ef48cc2eb46dd4f79c9c08e8

two more useful links:
1. https://forums.gentoo.org/viewtopic-t-984500-highlight-ffmpeg.html
abi_x86_32 disabled.

2. https://forums.gentoo.org/viewtopic-t-1020872-highlight-.html
never try to globalize abi_x86_32

useful commands:
find all packages that are dependent on EMUL
root #for EMUL in $(eix -I --only-names emul-linux); do equery depends $EMUL; done
10. keep kernels in the eselect kernel lists (2015-06-22)
One may notice that once emerge -depclean, all the non-listed kernels are gone (one can not make it anymore like 3.10.25 in the laptop).

related:
https://forums.gentoo.org/viewtopic-p-7696064.html#7696064
#emerge --noreplace =gentoo-sources-3.17.8-r1
after running this command, the select atom is add in world set (/var/lib/portage/world) so that emerge --depclean is not going to wipe it off.
11. Problem when using emerge @presserved-rebuild (2015-06-22)
Assuming there is one package in preserved library deleted, the box will produced error when running emerge @presserved-rebuild. The way to delete it is to mannually delete the associated files:
portageq list_preserved_libs /
related:
https://wiki.gentoo.org/wiki/Preserve-libs
https://forums.gentoo.org/viewtopic-t-959998-start-0.html
12. Remove all gnome, kde associated packages. (2015-06-22)
The reason to do so is to make the system compact so that any computer is able to install gentoo.
(1) add -gnome -kde in /etc/make.conf  (it seems there is no flags for lxde and xfce)
(2) Change profiles
eselect profile list
(3)un
emerge -C $(grep gnome /var/lib/portage/world)
also find all installed package associated with gnome and perhapse uninstall all of them.
equery list "*" | grep gnome
Related Links:
https://forums.gentoo.org/viewtopic-t-850239-start-0.html
https://wiki.gentoo.org/wiki/KDE/Removal
13. Check use flags of a package (2015-06-22)
find the use flags
equery uses gnumeric
find the dependency conditions
equery depends gnumeric
all packages associated with gnome

equery list "*" | grep gnome
other infomation

equery 
get all installed package

equery list "*" >> installed
so far i have got 926 on 2015-06-22. try to reduce it.
                         895 for toshiba
equery has bindist
list all the packages that has bindist flag (whether it is enabled or not) 
14. use distcc (2015-06-26)
see the list of compile machines.
distcc-config --get-hosts
list all the packages that has bindis
https://forums.gentoo.org/viewtopic-p-7207506.html
15. a correction to my method of using bash (2015-06-27)
https://forums.gentoo.org/viewtopic-t-1020878-highlight-.html
16. How to properly update a kernel(2015-06-27)
at the moment 4.0.5 is not working on T5500. the reason is that nvidia-drivers (bloody nvidia drivers has to be emerged every single time https://forums.gentoo.org/viewtopic-t-996602-highlight-nvidia.html) are not able to be installed. even i have followed:
https://forums.gentoo.org/viewtopic-p-7766108.html?sid=f4c9970e533b6bf99b7450aa1e9e89b4
it is still not working, anyway.
17. Solving no mouse problem on toshiba laptop [unsloved](2015-06-27)
question posted:
https://forums.gentoo.org/viewtopic-t-1020934-highlight-.html
18. Control tty (2015-06-27)
following:
http://superuser.com/questions/67659/linux-share-keyboard-over-network
do on user machine (client)
cat /dev/input/by-path/pci-0000:00:1a.0-usb-0:1.1:1.0-event-kbd | nc 10.33.21.70 4444
and
nc -l -p 4444 > /dev/input/by-path/platform-i8042-serio-0-event-kbd
on host, then you are able to control tty perfectly.

lsusb -t
qca failed
/var/log/portage/app-crypt:qca-2.1.0.3:20150628-000221.log

list all the running modules
cat /proc/modules

ae429-3176 proc # cd /lib/modules/4.0.5-gentoo/kernel/drivers/hid/
ae429-3176 hid # ls
hid-logitech-dj.ko  hid-logitech-hidpp.ko  uhid.ko

modinfo hid-logitech-hidpp

uqczhan2@macondo03 ~ $ lsmod |grep hid
mac_hid                13253  0
hid_generic            12548  0
usbhid                 53111  0
hid                   106605  2 hid_generic,usbhid

https://forums.gentoo.org/viewtopic-t-883988-highlight-keyboard.html

 qlist -IC x11-drivers

working 3.10.25
ae429-0176 chenming # dmesg |grep Logitech
[    2.760539] usb 4-1: Manufacturer: Logitech
[    2.769325] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:12.0/usb4/4-1/4-1:1.0/input/input5
[    2.770902] hid-generic 0003:046D:C52F.0001: input,hidraw0: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:12.0-1/input0
[    2.779733] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:12.0/usb4/4-1/4-1:1.1/input/input6
[    2.783405] hid-generic 0003:046D:C52F.0002: input,hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:12.0-1/input1
[    2.829659] input: PS/2 Logitech Wheel Mouse as /devices/platform/i8042/serio1/input/input7

not working case 3.17.??
dmesg |grep Logitech
[    2.515042] input: PS/2 Logitech Wheel Mouse as /devices/platform/i8042/serio1/input/input6

currently i can use
shift+insert to paste things on commandline

Sunday, 12 January 2014

Some notes on installing apps in gentoo x86_64

This post lists all the problems I have encountered during updating gentoo using #--------------update the system weekly----------------------------
# emerge -auDvN  --keep-going world 
#---------------problem in installing evince----------------------------
# emerge -av evince 
configure: error: "PDF support is disabled since poppler-glib library version 0.20.0 or newer not found" solve:
# emerge -av poppler 
#---------------problem in installing net-libs/gupnp-igd-0.2.1----------------------------
* ERROR: net-libs/gupnp-igd-0.2.1::gentoo failed (compile phase):
 *   emake failed
test.c: In function 'main':
test.c:66:3: warning: 'g_type_init' is deprecated (declared at /usr/include/glib-2.0/gobject/gtype.h:669) [-Wdeprecated-declarations]
test.c:67:3: warning: 'g_thread_init' is deprecated (declared at /usr/include/glib-2.0/glib/deprecated/gthread.h:260) [-Wdeprecated-declarations]
  CCLD     test
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../x86_64-pc-linux-gnu/bin/ld: test.o: undefined reference to symbol 'g_type_init'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../x86_64-pc-linux-gnu/bin/ld: note: 'g_type_init' is defined in DSO /usr/lib64/libgobject-2.0.so.0 so try adding it to the linker command line
/usr/lib64/libgobject-2.0.so.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[3]: *** [test] Error 1
make[3]: Leaving directory `/var/tmp/portage/net-libs/gupnp-igd-0.2.1/work/gupnp-igd-0.2.1/tests/examples'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/net-libs/gupnp-igd-0.2.1/work/gupnp-igd-0.2.1/tests'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/net-libs/gupnp-igd-0.2.1/work/gupnp-igd-0.2.1'
make: *** [all] Error 2
emake failed
 * ERROR: net-libs/gupnp-igd-0.2.1::gentoo failed (compile phase):
 *   emake failed

Solve:

add the follow line in /etc/portage/package.keywords/net-libs

>=net-libs/gupnp-igd-0.2.2-r1

solved #-------------- install systemd on gentoo and use Grub 2 to boot it -------- there are two important information that one needs to follow: [1]: How to set new manuentry? [2]: How to add a new vmlinuz in folder /boot/ Here are successful example of menuentries in /boot/grub/grub.cfg
one can write these to /boot/grub/grub.cfg


menuentry 'Gentoo write by myself' {
        root=hd0,2
        linux /boot/vmlinuz-3.10.7-gentoo root=/dev/sda2 init=/usr/lib/systemd/systemd
}

menuentry 'Gentoo write by myself UUID' --class gnu-linux --class gnu {
        root=hd0,2
        linux /boot/vmlinuz-3.10.7-gentoo root=UUID=671f9d17-5de7-4fe7-a6bf-f1096f4efe29 init=/usr/lib/systemd/systemd
}

 ------- The problem on the networkmanager after updated to systemd and gnome 3 ----------------- 
The networkmanager in gentoo installed at my laptop and desktop failed to work after updating to systemd and gnome3. To find out the problem, I use:
systemctl status NetworkManager
 
which says:
The overwriting error message was: Could not load plugin 'ifnet': /usr/lib64/NetworkManager/libnm-settings-plugin-ifnet.so: cannot open shared object file: No such file or directory 
To resolve this problem, one needs to delete ifnet in the file /etc/NetworkManager/NetworkManager.conf
[main]
#plugins=ifnet,keyfile
plugins=keyfile
no-auto-default=00:26:6C:09:9F:1C,

[ifnet]
managed=true
auto_refresh=false
There is one thing to be reminded: alternatively, one can use wicd as a temporary resolution. However, I found the wicd is quite unstable in my gentoo system than that in Ubuntu. #------ Important note on updating kernels ----------------- I had one bad experience in updating kernel of my PC. after new kernel is selectecd, the module that has been selected has been gone completely! This means that I have to look for every module selected in the kernel! To avoid this problem happen again, One should backup file /usr/src/linux/.config before any updates on kernels!
Problem:
[ebuild   R    ] app-text/docbook-sgml-utils-0.6.14-r1  USE="jadetex" 0 kB
emake error
emerge =docbook-sgml-dtd-3.1* 
emerge -u docbook-sgml-utils

Problem:
media-sound/cdparanoia-3.10.2-r6
solution:
echo "=media-sound/cdparanoia-3.10.2-r6 -static-libs" >> /etc/portage/package.use/media-sound


Problem:
sci-libs/scotch-6.0.0:0/6 fail to install 
Solution: to enable all the flags.
echo ">=sci-libs/scotch-6.0.0:0/6 mpi doc int64 static-libs threads tools" >> /etc/portage/package.use/sci-libs


Problem:
app-i18n/fcitx-4.2.7  USE="X autostart cairo dbus enchant gtk gtk3 icu introspection nls pango qt4 static-libs table xml -debug -lua -opencc -snooper {-test}" 0 kB
Solution: enabling all the falgs
echo ">=app-i18n/fcitx-4.2.7 lua opencc snooper" >> /etc/portage/package.use/app-il8n



Problem: Displaying Chinese properly without Desktop manager:
1. # emerge -av arphicfonts wqy-bitmapfont  corefonts ttf-bitstream-vera
2. # gedit /etc/locale.gen
en_US ISO-8859-1
en_US.UTF-8 UTF-8
zh_CN GB18030
zh_CN.GBK GBK
zh_CN.GB2312 GB2312
zh_CN.UTF-8 UTF-8

3. locale-gen && env-update && source /etc/profile


Monday, 16 September 2013

automount drivers on gentoo using i3wm

it is very annoying when simple wm doesn't provide any auto mount module, one has to find a way to mount usb drivers and mobile harddisks. it is even harder when there is a ntfs partitions.

In this page, we basically solve two problems:
1. How to let gentoo recognize ntfs partition?
2. How to auto mount usb and mobile hard disks?
For the first question, there are two steps:

step 1:
let kernel support fuse:
enable File Systems->Fuse (file system in userpsace), make it as module



step 2:
install ntfs3g
# emerge -a ntfs3g


For the second question, edit the following in /etc/fstab
/dev/sda1   /boot     ext4    noauto,noatime     1 2
/dev/sda2   /         ext4    noatime            0 1
/dev/sda7   none      swap    sw                 0 0
/dev/sda6   /home     ext4    defaults        0       2

# for sandisk usb driver noauto means it will not be mounted automatically, which is to avoid error if it is not mounted 
/dev/sdc1 /mnt/sandisk auto noauto,users,noatime,umask=0 0 0

# for mobile hard disk 
UUID="333c9d2f-1c2a-482e-83f7-616fa45a478a" /mnt/MobiC ext4 auto,rw,users,exec,nofail 0 0
UUID="D0CC0864CC0846E6"   /mnt/MobiD  ntfs-3g rw,suid,dev,exec,async,auto,users,nofail  0 0 

# for scientific linux
/dev/sda8 /home/chenming/SL ext4 rw,users,exec 0 0
# for Lubuntu
/dev/sda10 /home/chenming/Lubuntu ext4 rw,users,exec 0 0
# for slackware
/dev/sda5 /home/chenming/Slackware ext4 rw,users,exec 0 0
# the local ntfs driver
/dev/sda9 /home/chenming/ntfs      ntfs-3g defaults   0 0

sda2, sda7, sda6 are all for systems, sda8,sda10,sda5,sda9 are local disks. notice the difference between ntfs and ext4.
the two uuid ones are the mobile harddisk. note that both has been added noauto options, it is set to avoid mount on boot. when mobile hard disk is not present, booting the system with automount on will cause error. also by this way one can "partially" auto mount by click icons at nautilus.
the disadivantage for this method is that it can not automount ntfs driver, so at the moment after the device is inserted one has to run the following by root:
# mount  UUID="D0CC0864CC0846E6"
hope we can find better way to make the whole process automatically.
more info:
auto,nofail-- it means it will be automatically mount on boot. however, if it is not present on boot, error will not appear.
useful tools here:
command blkid is very good to find out all of the uuids:
mybox linux # blkid
/dev/sda1: UUID="1ed58cd8-d54c-4191-86b5-2b967298d3c2" TYPE="ext4" 
/dev/sda2: UUID="671f9d17-5de7-4fe7-a6bf-f1096f4efe29" TYPE="ext4" 
/dev/sda5: UUID="c8216a5e-3d03-491e-94a0-c19c25bdeee7" TYPE="ext4" 
/dev/sda6: UUID="90b2869f-0d85-43ea-af05-b2833ded28ff" TYPE="ext4" 
/dev/sda7: UUID="f660c6ea-ac34-4d1f-8945-e800adae05aa" TYPE="swap" 
/dev/sda8: UUID="1e45a116-4e39-4a0f-8c67-48fe0c3c2ec0" TYPE="ext4" PTTYPE="dos" 
/dev/sda9: UUID="075E30C271C193B7" TYPE="ntfs" 
/dev/sda10: UUID="692659d8-84d1-4de4-b530-5d97d302e353" TYPE="ext4" 
/dev/sr0: UUID="2012-02-03-16-05-05-00" LABEL=""SL 6.2 x86_64 DVD"" TYPE="iso9660"

gentoo: install ethernet card driver

after installing gentoo, i found it automatically recognize my ethernet card, but the driver is not properly installed (the module is loaded in default)
mybox Desktop # lspci -k
02:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter (rev 01)
        Subsystem: Realtek Semiconductor Co., Ltd. Device 8182
        Kernel driver in use: rtl8192ce
        Kernel modules: rtl8192ce
06:00.0 Ethernet controller: Qualcomm Atheros AR8152 v2.0 Fast Ethernet (rev c1)
        Subsystem: Toshiba America Info Systems Device ff1e
note there is no modules list on the AR8152.
apparently the kernel should provide the driver for Ethernet card, so I should not try to look for drivers. from ubuntu, i found the module is called atl1c. then I tried to find it in the kernel menuconfig:
# cd /etc/usr/linux
# make menuconfig

then i found it at Device Drivers -> Network device support -> Ethernet driver support -> Atheros device (simplely choose all of them)
now remake the kernel module , install and load the module:
# make modules_install
# modeprobe atl1c

enjoy!

change mac address for ubuntu and gentoo

first one has to check the situation of network:
# ifconfig
this gives:
mybox Desktop # ifconfig
enp6s0: flags=4163  mtu 1500
        inet 10.33.21.70  netmask 255.255.252.0  broadcast 10.33.23.255
        inet6 fe80::222:19ff:fe2e:603f  prefixlen 64  scopeid 0x20
        ether 00:22:19:2e:60:3f  txqueuelen 1000  (Ethernet)
        RX packets 13223  bytes 6462275 (6.1 MiB)
        RX errors 0  dropped 18  overruns 0  frame 0
        TX packets 6147  bytes 1062544 (1.0 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 1  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 0  (Local Loopback)
        RX packets 600  bytes 48840 (47.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 600  bytes 48840 (47.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp2s0: flags=4099  mtu 1500
        inet6 fe80::e2ca:94ff:fedb:57ac  prefixlen 64  scopeid 0x20
        ether e0:ca:94:db:57:ac  txqueuelen 1000  (Ethernet)
        RX packets 457  bytes 532967 (520.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 257  bytes 42551 (41.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
note that here enp6s0 is wired card and wlp2s0 is wireless, which is different from eth0 and wlan0 in some distributions (e.g., slackware ubuntu debian lubuntu, scientific linux) also note that the name of the mac is called ether rather than HWaddr
therefore, one can do:
ifconfig enp6s0 down
ifconfig enp6s0 hw ether  00:22:19:2E:60:3F
ifconfig enp6s0 up

now you have the new mac address working on your enternet. for other distributions, one may need to change enp6s0 into eth0, and ether into HWaddr. enjoy!