# [CFT] skype-4.2.0.11 port



## cpm@ (Nov 14, 2013)

All the related discussion is currently on the freebsd-emulation mailing list. Everyone is invited to test it and report all the issues that could encounter when build/install the new port release. Also it's just to note that it includes the CentOS 6 infrastructure ports which it have been ported to FreeBSD.

Please, for further details, read here.

Thanks for your contribution


----------



## Erratus (Nov 14, 2013)

cpm said:
			
		

> Everyone is invited to test it and report all the issues ... Thanks for your contribution


Why should I test a piece of software that is known to be used as a surveillance instrument? Is that issue resolved?


----------



## fernandel (Nov 14, 2013)

Erratus said:
			
		

> Why should I test a piece of software that is known to be used as a surveillance instrument? Is that issue resolved?



What software are you  recommended which is FreeBSD/Linux/Windows/OS X compatible, please and is not a "surveillance instrument"?
The encrypted smoke signals?


----------



## cpm@ (Nov 14, 2013)

Erratus said:
			
		

> Why should I test a piece of software that is known to be used as a surveillance instrument? Is that issue resolved?



Haha, your thinking make sense in this case. I don't really matter if NSA uses Skype, only I want to check that it works fine on FreeBSD. Indeed, I know that we have a bunch of nice alternatives.

Of course, you are welcome despite you don't want to test it


----------



## cpm@ (Nov 15, 2013)

This is very interesting 


> "The NSA has turned the Internet into a giant surveillance platform," Schneier said via Skype.



More...

PS. Also, it's worth reading this article about the matter.


----------



## MAN (Nov 16, 2013)

I really need Skype to communicate with people and I don't have any secret information on my desktop. Of course we would like to have an alternative, but there is none. So this port is for people like me, who use FreeBSD on the desktop and need Skype.


----------



## cpm@ (Nov 16, 2013)

Of course, if you want to use Skype4 on FreeBSD then follow the instructions to install it. All it's clearly detailed in this GitHub repository. Also exist other alternatives to Skype discussed in this thread. So go ahead


----------



## bkouhi (Nov 19, 2013)

Hi.

I've installed it successfully, but it only shows a blank window  When I run it from a terminal window, it prints the following messages:


```
[CMD]% skype[/CMD] 
Fontconfig error: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
Fontconfig error: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
Fontconfig warning: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 78: saw unknown, expected number
/usr/local/bin/skype: line 2: 39517 Aborted                 (core dumped) /usr/local/share/skype/skype --resources=/usr/local/share/skype --disable-api $@
```

Here is a screen shot of the window: http://i42.tinypic.com/qrmezd.png

More information about my system:


```
[CMD]% uname -a; sysctl compat.linux | head -2; grep OVERRIDE_LINUX_ /etc/make.conf[/CMD]
FreeBSD minootux 9.2-STABLE FreeBSD 9.2-STABLE #0 r256021: Thu Oct  3 22:42:34 IRST 2013     root@minootux:/usr/obj/usr/src/sys/GENERIC  amd64
compat.linux.oss_version: 198144
compat.linux.osrelease: 2.6.18
OVERRIDE_LINUX_BASE_PORTS=c6
OVERRIDE_LINUX_NONBASE_PORTS=c6
```

I found a core file in my home directory:


```
% [CMD]file skype.core[/CMD]
skype.core: ELF 32-bit LSB core file Intel 80386, version 1 (FreeBSD), FreeBSD-style, from 'pe'
```

But:

```
(gdb)[CMD] core skype.core [/CMD]
"/usr/home/javad/skype.core" is not a core dump: File format is ambiguous
(gdb)
```


----------



## Juanitou (Nov 19, 2013)

cpm said:
			
		

> Of course, if you want to use Skype4 on FreeBSD then follow the instructions to install it. All it's clearly detailed in this GitHub repository.



Thanks for this initiative, I'd like to test it but I haven't yet found how to merge the tree that I have checked out through svn into the ports tree. Using a simple mv won't do it and it refuses to compile "in place".

Also, could you please add to the GitHub Readme the instructions for enabling Linux compatibility? I mean `kldload linux` (and maybe the modifications to rc.conf), necessary before using sysctl and start compiling.


----------



## cpm@ (Nov 20, 2013)

Hi @bkouhi,

Be sure that you have deleted all the linux-f10* ports. Please, show the following output `pkg_info -Ix linux`

I show you my output:

```
[CMD]% pkg_info -Ix linux[/CMD] 
linux-c6-alsa-lib-1.0.22 Advanced Linux Sound Architecture libraries (Linux CentOS 6.2)
linux-c6-alsa-plugins-oss-1.0.21 OSS plugin for ALSA (Linux CentOS 6.2)
linux-c6-atk-1.28.0 Accessibility Toolkit, Linux/i386 binary (Linux CentOS 6.2)
linux-c6-cairo-1.8.8 Vector graphics library Cairo (Linux CentOS 6.2)
linux-c6-curl-7.19.7 Command line tool for transferring files with URL syntax (Linux CentOS 6.2)
linux-c6-cyrus-sasl2-2.1.23 RFC 2222 SASL (Simple Authentication and Security Layer) (Linux CentOS 6.2)
linux-c6-dbus-libs-1.2.24 Libraries for accessing D-BUS (Linux Fedora  6.2)
linux-c6-dri-7.11   >Mesa libGL runtime libraries (Linux CentOS 6.2)
linux-c6-expat-2.0.1 Linux/i386 binary port of Expat XML-parsing library (Linux CentOS 6.2)
linux-c6-flashplugin-11.2r202.327 Adobe Flash Player NPAPI Plugin
linux-c6-fontconfig-2.8.0 XML-based font configuration API for X Windows (Linux CentOS 6.2)
linux-c6-gtk2-2.18.9 GTK+ library, version 2.X  (Linux CentOS 6.2)
linux-c6-jpeg-6b    RPM of the JPEG lib (Linux CentOS 6.2)
linux-c6-libssh2-1.2.2 Library implementing the SSH2 protocol (Linux CentOS 6.2)
linux-c6-nspr-4.8.8 Netscape Portable Runtime (Linux CentOS 6.2)
linux-c6-nss-3.12.10 Network Security Services (Linux CentOS 6.2)
linux-c6-openldap-2.4.23 Lightweight Directory Access Protocol libraries (Linux CentOS 6.2)
linux-c6-openssl-1.0.0 OpenSSL toolkit (Linux CentOS 6.2)
linux-c6-openssl-compat-0.9.8e OpenSSL toolkit (Linux CentOS 6.2)
linux-c6-pango-1.28.1 Pango library (Linux  CentOS 6.2)
linux-c6-png-1.2.46 RPM of the PNG lib (Linux CentOS 6.2)
linux-c6-qt47-4.7.2 RPM of QT4 (Linux CentOS 5)
linux-c6-qt47-webkit-4.7.2 RPM of QT4 (Linux CentOS 5)
linux-c6-qt47-x11-4.7.2 RPM of QT4 (Linux CentOS 5)
linux-c6-sqlite3-3.6.20 Library that implements an embeddable SQL database engine (Linux CentOS 6.2)
linux-c6-tiff-3.9.4 TIFF library (Linux CentOS 6.2)
linux-c6-xorg-libs-7.4 Xorg libraries (Linux CentOS 6.2)
linux_base-c6-6.2_1 Base set of packages needed in Linux mode for i386/amd64 (Linux CentOS 6.2)
```

I guess by comparing the list of installed ports we can find out where is the problem.

For the record when you remove emulators/linux_base-f10 includes in its pkg-deinstall an script with some instructions that you must follow before you attempt to install emulators/linux_base-c6.

```
[CMD]% cat /usr/ports/emulators/linux_base-f10/pkg-deinstall[/CMD]
#!/bin/sh
# a deinstallation script for linux_base

case "$2" in
DEINSTALL)
	if [ -n "`mount | grep ^linproc`" ] || \
		[ -d /compat/linux/proc ]; then
		echo ""
		echo "You may need to do by hand:"
		echo "  o  unmount linprocfs if mounted"
		echo "  o  delete ${PKG_PREFIX}/proc if present"
		echo "  o  remove/comment linprocfs from /etc/fstab if present"
		echo ""
	fi
	;;
esac

exit 0
```

You need only do `rm -R /compat/linux/proc` and recreate again the /proc directory.

You should have present this line in /etc/fstab:

```
linproc		/compat/linux/proc	linprocfs	rw	0	0
```


----------



## cpm@ (Nov 20, 2013)

Juanitou said:
			
		

> Thanks for this initiative, Iâ€™d like to test it but I havenâ€™t yet found how to merge the tree that I have checked out through svn into the ports tree. Using a simple mv wonâ€™t do it and it refuses to compile â€œin placeâ€.



Right now, you can download as a zip file or by using devel/git and you should replace all in your /usr/ports. Note that Skype4 ports will be merged in the ports tree when it be stable.



			
				Juanitou said:
			
		

> Also, could you please add to the GitHub Readme the instructions for enabling Linux compatibility? I mean `kldload linux` (and maybe the modifications to rc.conf), necessary before using sysctl and start compiling.



Regarding to add the instructions for enabling Linux Binary Compatibility (LBC) in the README.md could be fine, so thanks for your input 

PS. Your request was committed.


----------



## bkouhi (Nov 21, 2013)

I only have:


```
[CMD]% pkg_info -Ix linux [/CMD]
linux-c6-alsa-lib-1.0.22 Advanced Linux Sound Architecture libraries (Linux CentOS 6
linux-c6-alsa-plugins-oss-1.0.21 OSS plugin for ALSA (Linux CentOS 6.2)
linux-c6-dbus-libs-1.2.24 Libraries for accessing D-BUS (Linux Fedora  6.2)
linux-c6-dri-7.11   >Mesa libGL runtime libraries (Linux CentOS 6.2)
linux-c6-expat-2.0.1 Linux/i386 binary port of Expat XML-parsing library (Linux 
linux-c6-fontconfig-2.8.0 XML-based font configuration API for X Windows (Linux CentO
linux-c6-jpeg-6b    RPM of the JPEG lib (Linux CentOS 6.2)
linux-c6-openssl-compat-0.9.8e OpenSSL toolkit (Linux CentOS 6.2)
linux-c6-png-1.2.46 RPM of the PNG lib (Linux CentOS 6.2)
linux-c6-qt47-4.7.2 RPM of QT4 (Linux CentOS 5)
linux-c6-qt47-webkit-4.7.2 RPM of QT4 (Linux CentOS 5)
linux-c6-qt47-x11-4.7.2 RPM of QT4 (Linux CentOS 5)
linux-c6-sqlite3-3.6.20 Library that implements an embeddable SQL database engine (
linux-c6-tiff-3.9.4 TIFF library (Linux CentOS 6.2)
linux-c6-xorg-libs-7.4 Xorg libraries (Linux CentOS 6.2)
linux_base-c6-6.2_1 Base set of packages needed in Linux mode for i386/amd64 (L
```

It seems that some ports are missing in my ports tree:


```
[CMD]% psearch linux-c6-atk[/CMD]
[CMD]% [/CMD]
(no output)
```

I merged the files from the repository in my /usr/ports in this way:

`% git clone [url=http://github.com/cpu82/skype4-ports.git]http://github.com/cpu82/skype4-ports.git[/url]`
`% cp -r skype4-ports/* /usr/ports/`

I try to install missing ports.


----------



## MAN (Nov 22, 2013)

Did you mount linprocfs and linsysfs?


----------



## bkouhi (Nov 22, 2013)

Oh, I'm so sorry guys, I completely forgot about linprocfs :r I apologize for that. Now skype works fine. I don't have a webcam right now, but all other parts works as expected.


----------



## cpm@ (Nov 22, 2013)

MAN said:
			
		

> Did you mount linprocfs and linsysfs?



Yes, Skype depends on linprocfs(5)() being loaded. Check if it can be loaded and mounted by running:

```
# kldload linprocfs
# mount -t linprocfs linproc /compat/linux/proc
```

If this works, add in /etc/fstab

```
linproc       /compat/linux/proc      linprocfs       rw      0       0
```

Also, it could be loaded from /boot/loader.conf

```
linprocfs_load="YES"             # Linux compatibility process filesystem
```

I think, it's necessary rewrite again the /usr/ports/net-im/skype4/pkg-message to include the missing instructions (currently is outdated).



			
				bkouhi said:
			
		

> Oh, I'm so sorry guys, I completely forgot about linprocfs :r I apologize for that. Now skype works fine. I don't have a webcam right now, but all other parts works as expected.



Thank you for your feedback


----------



## scottro (Nov 22, 2013)

Ah, I'd forgotten that too--I had done `kldload linux` (necessary to install the c6 ports), but hadn't mounted linuxprocfs(5).  The port had built, but when I started it, I was unable to get past the accept screen.  (When pointing people to the instructions, if mention of loading and mounting linuxprocfs isn't in them, it might be useful to add it.)  

I still can't get sound or camera working with it, but haven't yet spent much time trying.  (Sound and camera do work on the machine.)

Just for fun, I also tried to install it on a 10 beta, but it didn't succeed, saying that bsd.linux-apps.mk test failed, suggesting I remove the IGNORE line in the make file for openssl-compat.

As the bsd.linux-apps.mk is one of the files provided for the skype4 port, and looking it, with my limited knowledge, it wasn't obvious to me which of the IGNORE lines needed to be commented out, and did that also mean I should comment out the if statements in which they were, I stopped at that point.


----------



## cpm@ (Nov 22, 2013)

IMHO, is preferable to add all this points in the pkg-message as I argued earlier. I guess that the port maintainer shall commit the changes. 

For the record, the contents of this thread will serve to improve/update the net-im/skype4 port objectively


----------



## bkouhi (Nov 22, 2013)

scottro said:
			
		

> I still can't get sound or camera working with it, but haven't yet spent much time trying. (Sound and camera do work on the machine.)



Sound works for me by changing "Default device (default)" to "Open Sound System (OSS)" in the "Options -> Sound Devices". Please try that and see if it works.


----------



## Juanitou (Nov 22, 2013)

Portmaster fails here at the end of www/linux-c6-qt47-webkit install:

```
===> Checking if www/linux-c6-qt47-webkit already installed
===>  Registering installation for linux-c6-qt47-webkit-4.7.2
pkg-static: lstat(/usr/ports/www/linux-c6-qt47-webkit/work/stage/compat/linux/usr/lib/qt47/imports/QtwebKit/qmldir/): Not a directory
*** [fake-pkg] Error code 74

Stop in /usr/ports/www/linux-c6-qt47-webkit.
===>>> Installation of linux-c6-qt47-webkit-4.7.2 (www/linux-c6-qt47-webkit) failed
===>>> Aborting update

===>>> Killing background jobs

===>>> You can restart from the point of failure with this command line:
portmaster <flags> net-im/skype4 www/linux-c6-qt47-webkit
```

I’m working on a 9.2-RELEASE VMware image, fully patched, with the ports tree up to date.


----------



## scottro (Nov 22, 2013)

@bkouhi, thank you yes, that enabled me to get sound.  However, it's still failing when I try a test call, with a message that audio capture failed.  

Still, it's a step forward.


----------



## cpm@ (Nov 23, 2013)

Juanitou said:
			
		

> Portmaster fails here at the end of www/linux-c6-qt47-webkit install:
> 
> ```
> ===> Checking if www/linux-c6-qt47-webkit already installed
> ...



Reinstall ports-mgmt/pkg and try to install www/linux-c6-qt47-webkit again. If it fails then you should try to clear down the ports tree and do a fresh `portsnap fetch extract` before you retry it.


----------



## cpm@ (Nov 23, 2013)

scottro said:
			
		

> @bkouhi, thank you yes, that enabled me to get sound.  However, it's still failing when I try a test call, with a message that audio capture failed.
> 
> Still, it's a step forward.



Do you use a microphone or a headset? Run `skype` from console and see if it shows any wrong message when you try a test call. Also show the output of `dmesg`.

Take a look to this article of the Skype support page.


----------



## Juanitou (Nov 23, 2013)

cpm said:
			
		

> Reinstall ports-mgmt/pkg and try to install www/linux-c6-qt47-webkit again. If it fails then you should try to clear down the ports tree and do a fresh `portsnap fetch extract` before you retry it.



Thanks, but it doesn't work, I cannot even reinstall pkg after bootstrapping it. I'm quite sure the problem is that this VM has seen too much experimental silliness from me: going forth and back through major upgrades with portsnap, mixing ports and packages and so on. I'm going to install a brand new image to test the Skype port and will report back as soon as possible.


----------



## cpm@ (Nov 26, 2013)

I updated the instructions to enable the video calls. Please, consider reading the Webcam Compatibility List to know if yours is currently supported.


----------



## Juanitou (Nov 27, 2013)

multimedia/linux-c6-libv4l fails with a fetch error (File unavailable). Both vault.centos.org and ftp.FreeBSD.org repositories fail.


----------



## cpm@ (Nov 27, 2013)

Juanitou said:
			
		

> multimedia/linux-c6-libv4l fails with a fetch error (File unavailable). Both vault.centos.org and ftp.FreeBSD.org repositories fail.


Thanks for reporting, @Juanitou. The URL has been fixed.


----------



## Juanitou (Nov 28, 2013)

*Re:*



			
				cpm said:
			
		

> Juanitou said:
> 
> 
> 
> ...


Issue resolved, thanks! Unfortunately, the last port before building Skype fails at the installing stage, as it did on the older virtual machine:


			
				cpm said:
			
		

> Juanitou said:
> 
> 
> 
> ...


I have created this virtual machine from scratch, so the ports tree is fresh and pkg up to date (1.2.1). Needless to say, I have also a new Git clone of your repository.

Curiously:

```
# cat /usr/ports/www/linux-c6-qt47-webkit/work/stage/compat/linux/usr/lib/qt47/imports/QtwebKit/qmldir/qmldir
plugin qmlwebkitplugin
```
Any ideas?


----------



## cpm@ (Nov 28, 2013)

As a workaround add 

```
NO_STAGE=yes
```
in linux-c6-qt47-webkit/Makefile. This line avoids converting a port to _staging_.


----------



## Juanitou (Nov 28, 2013)

Thanks, it works, even if it still complains about the non-staged folder:

```
===>  Registering installation for linux-c6-qt47-webkit-4.7.2
pkg-static: lstat(/compat/linux/usr/lib/qt47/imports/QtwebKit/qmldir/): Not a directory
Installing linux-c6-qt47-webkit-4.7.2... done
```


----------



## Juanitou (Nov 28, 2013)

Thanks @cpm, Skype works, even if it complains about a Fontconfig error as reported by @bkouhi and I have not managed to make the sound and the webcam work in VMware (not related to Skype).

May I suggest you to add some lines about linprocfs in the README file? The handbook chapter you reference does not talk about it and I have not seen a pkg-message indicating it is needed.


----------



## cpm@ (Nov 29, 2013)

Juanitou said:
			
		

> May I suggest you to add some lines about linprocfs in the README file? The handbook chapter you reference does not talk about it and I have not seen a pkg-message indicating it is needed.


Done! If you find any error or mistake, please, let me know.

https://github.com/cpu82/skype4-ports/blob/master/README.md


----------



## Juanitou (Nov 29, 2013)

The only issue I see in the README file is that it assumes the user has the Linux binary compatibility enabled, since the text starts by explaining that all linux-f10 ports must be deleted. We only find the reference to the handbook at the middle of the text… and sure enough it explains that we have to install emulators/linux_base-f10! An experienced user can understand what to do, but I’m not sure about an inexperienced one. If I had more time I’d like to propose you a rewrite of the text, but I can’t right now.

On the other hand, if I managed to make Skype work with these instructions, almost anybody should be able to do it!


----------



## cpm@ (Nov 30, 2013)

OK! I think that your point of view is quite understandable. Remember that it's a provisional repository. As I said earlier, Skype4 ports will be merged into the Ports Collection, and it will include clearly all the instructions (step by step) required to handle each part of the setup process.


----------



## plutonium (Apr 4, 2014)

Hi @cpm, I've just installed net-im/skype on my Lenovo IdeaPad S400 with FreeBSD 10.0-RELEASE amd64. All looks very good: sound works fine and Options -> Video Devices shows my camera on /dev/video0 correctly and pressing Test button shows that camera is working, and camera led light is on.

However, I cannot make nor receive any real video call. Camera doesn't turn on and no incoming video popup window appears. What should it be? What kind of info should I post?

Thanks!


----------



## scottro (Apr 4, 2014)

@plutonium, note that the last posts in this thread are from last year.  

http://forums.freebsd.org/viewtopic.php?f=22&t=44800

is covering a more recent version of the CentOS ports including skype, and has, in recent versions, if one follows the README, worked quite well for many people.


----------



## plutonium (Apr 4, 2014)

scottro, thank you, I've missed that thread. I'll repost there.


----------

