Linux-Development-Sys Digest #246, Volume #6      Sat, 9 Jan 99 16:14:45 EST

Contents:
  Re: Why I'm dumping Linux, going back to Windblows (Horst von Brand)
  What is function or utility to get PID using Program name? (JiSook Kim)
  Re: disheartened gnome developer (Perry Pip)
  Re: Open Storage of Application Configuration (was Registry Thread) (George 
MacDonald)
  Re: engineering practices in Linux/OSS (Sorce Simo)
  Re: Why I'm dumping Linux, going back to Windblows (Tristan Wibberley)
  XFree86 3.3.3 and Media GX ("Marc Leblanc")
  Ram And comp.Fan (User470357)
  File descriptor as array index? (Roy Stogner)
  Re: How to get CPU usage? (David Matthews)
  Re: disheartened gnome developer (Perry Pip)
  Re: disheartened gnome developer (Navindra Umanee)
  Re: disheartened gnome developer (Hugh Lawson)
  Re: Redefining time_t (Nix)

----------------------------------------------------------------------------

From: [EMAIL PROTECTED] (Horst von Brand)
Crossposted-To: comp.os.linux.development.apps,comp.os.linux.setup
Subject: Re: Why I'm dumping Linux, going back to Windblows
Date: 8 Jan 1999 02:03:14 GMT

In article <[EMAIL PROTECTED]>, Joseph Coffman wrote:
>vi sucks, and it always has. It should only be used in a
>pinch, or by sadists. Anyone who has room in their head for
>all the vi commands, has probably overwritten some important
>"being human" information in the process of memorizing that
>crap.

vi(1) is an excellent text editor: Small footprint, regular command syntax,
suprisingly powerful. In the hands of somebody who knows it well. emacs(1)
is also excellent, mostly because of the incredible versatility it gets by
extensions written in elisp.

None of them both is particularly easy to learn to use, but so what? If you
want to control raw power, you'll have to invest some effort in taming it.
-- 
Horst von Brand                             [EMAIL PROTECTED]
Casilla 9G, Vi�a del Mar, Chile                               +56 32 672616

------------------------------

From: JiSook Kim <[EMAIL PROTECTED]>
Subject: What is function or utility to get PID using Program name?
Date: Sat, 09 Jan 1999 16:07:10 +0900

Hi!

What is function or utility to get PID using Program name?

thanks, jisook.


------------------------------

From: [EMAIL PROTECTED] (Perry Pip)
Crossposted-To: comp.os.linux.advocacy,comp.os.linux.development.apps,comp.os.linux.x
Subject: Re: disheartened gnome developer
Reply-To: [EMAIL PROTECTED]
Date: Sat, 09 Jan 1999 19:38:42 GMT

On Sat, 09 Jan 1999 14:48:45 GMT, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>Jedi, your grasp on reality is starting to look... inadequate.
>I would be very very surprised if the software written by Red Hat
>employees on work time didnt have a nice "copyright by Red Hat" sign on
>it.

Yes, but they are just co-owners. Take a look at the Gtk+ and Gnome
sources and you'll see copyrights not only owned owned by Redhat, but buy
FSF, and dozens of other individuals. 

>Red Hat does own the code they create, just like Troll Tech and Microsoft.
>That you have a copy of it under the GPL doesn't mean they can't later
>re-release it under a proprietary license.

But they would have to get dozens of other developers to go along with it.
You can be sure many would either flatly reject or ask for a peice of the
action.

In this respect, i personally feel Gtk/Gnome offers a better contract for
developers. And I can't help but notice that on freshmeat I see so many
more Gtk/Gnome based apps than I do Qt/KDE based apps. Could it be for
license reasons? Or could it be that many of the Gtk apps are actually
Gtk+perl or Gtk--, i.e. developers have choice of language. 

That having been said, I would like emphasize that I wish success for both
projects. They both add value to Linux.

Perry 

-- 
Share the code....or hit the road.

Perry Piplani                www.open-systems.com
[EMAIL PROTECTED]           perrypip.netservers.com

------------------------------

From: George MacDonald <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.development.apps,comp.os.linux.setup
Subject: Re: Open Storage of Application Configuration (was Registry Thread)
Date: Sat, 09 Jan 1999 04:36:20 GMT

Frank Sweetser wrote:
> 
> George MacDonald <[EMAIL PROTECTED]> writes:
> 
> > > The ".d" looks like a naming convention used to distiguish between a
> > > file and a directory that would otherwise bear the same name. I think
> > > the first use was simply to note the distinction between
> > >
> > >         /etc/rc   and a directory that was replacing it
> > >
> > > Red Hat seems to have used it also for /etc/logrotate.d ,
> > > /etc/profile.d and /etc/pam.d
> > >
> > > Was there a /etc/logrotate or a /etc/pam before?
> 
> yup.  there's still an /etc/pam.conf, but it's only for backwards
> compatability, and includes a comment pointing to /etc/pam.d/
> 
> > > Well it doesn't much matter to me, a /etc/opStore or /etc/opStore.d
> > > is fine. I would like to have the /etc/opStore.conf though.
> > >
> > > Also longer term I was thinking of defining other "stores" i.e
> > >
> > > opStore
> > >    |
> > >    |
> > >    V
> > > OpenStore = UserStore + AppStore + SystemStore + NetStore ( + otherStores)
> > >
> > > Where the UserStore is user specific, System store handles system
> > > related info(hostname info, passwd, file system, ...)
> > > AppStore handles the application specific info(i.e. default settings),
> > > NetStore handles things stored on the network.
> > >
> > > The UsersStore has it's own data, pulls in data from the other stores,
> > > and/or defines "views" into the other stores to define how to get the data.
> > > The various stores would be configured in the /etc/opStore.conf file.
> 
> hmm... sounds like we were thinking basically the same thing - i defined it
> in terms of configurating levels within the main config file, while you're
> talking about coding up distinct, integrated packages.   correct?
> 

Just defining functionally related items into a cohesive entitiy and
sticking a label on it. i.e all user related data, all app related
data, system related data ... You were organizing things in terms
of functional levels. In reality the functionality and data are
intertwined quite closely. It relates back to roles and who is
doing what, i.e. app developer, user, admin, ...

For example in the current model, an application developer defines
what the evaluation rules are, then the user, then the system.
In other words the user has as much control as the developer
has given them, well at least when looking for config info for
an app. The developer is limited by the system, and during install
time certain rights are granted, i.e. setuid or setgid. I
suppose after that the security model is limited to file 
permissions. There is no field level restriction unless
you use a database.

We are changing the security/access config data model a little bit. i.e.
allowing finer grain control over config data. This capability
is of much more use in network/business environments. On single
user systems the user typically has root priviledge.


> > > i.e.
> > >
> > > AppStore:       /usr/etc/AppStore
> > >
> > > or
> > >
> > > AppStore:       /usr/local/lib/AppStore
> > >
> > > B.t.w. I just checked with the companay that uses the name
> > www.openstore.com
> > > and they said it was ok if we wanted to use www.openstore.org! So I
> > > was thinking of expanding the name to OpenStore. What do you think?
> 
> works for me =)
> 

Ok, I'll see if I can snarf the name

> > > I think Frank is correct in puting the "configuration about where to get
> > > the application configuration info" in /etc/opStore.d . I would also
> > > like to allow the definition of macros in opStore.conf that can
> > > be used in the /etc/opStore.d files. For example it would be nice to
> > > define common "switch" settings, perhaps to define a "mobile",
> > > "dockedAtHome", "dockedAtWork" macros that define
> > > the "how to find config info" settings for each of those contexts.
> > >
> >
> > Hmm. that's not quite right. Information on how a "store" in general
> > gets its data is Meta data about the store. It's more like a list
> > of access methods or mechanisms, pehaps a list of possible methods,
> > then a list of ordered method lists. This is getting kind of lispy,
> > I can see why gnome is scheme'ified.
> 
> blech... never could really wrap my mind around lisp.  i think part of it
> is just the visually ugly and non eye-friendly syntax, though....

LISP = lots of insignificant silly parenthesis. Don't ya just
love the CAR CDR stuff, they were opcodes. Still the blurrying
of data and code it quite powerful, esp for learning.
> 
> > So each store can have a default access list, i.e. for that store
> > the default order in which information is retrieved. These of
> > course can then be overriden by each type/class of object in
> > it's store, and then also by each instance. Hmm, yeah that
> > sounds better.
> >
> > So each instance of a variable has an evaluation tree that
> > is processed to determine it's value. Thus to determine the
> > value, start at the head, then evaluate each "node" in a
> > breadth first, ordered manner, until the evaluation is
> > complete(i.e. obtains the desired value). What we have been
> > talking about is how to define the evaluation tree.
> >
> > The depth and breadth of the evaluation tree can be as
> > large as is needed. i.e. a local flat file is
> >
> >       depth=1, breadth=1
> >
> > fetching the value from an application default, using a RDBMS
> > might be at node
> >
> >       depth=2, breadth=2
> >
> >
> > Sorry, this is a bit abstract and I am kind of thinking out
> > loud. Does this make sense?
> 
> makes perfect sense to me.  to elaborate (if i'm correct =) a typicall tree
> might look like this (forgive the long lines....)
> 
>     start here
>         |
>         |
>         |
>         V
> global  ---> RDBMS on central company server
> config  |
>         |
>         V
> system  ---> RDBMS on central server --> local file,   ------> local file,
> config  |    keyed on machine name    /etc/opStore.d/defaults  opStore/<app>
>         |
>         V
> user    ---> RDBMS on central server --> local file, ----> local file,
> config  |    keyed on user name     ~/.opStore/defaults   ~/.opStore/<app>
>         |
>         V
> app     ---> compiled in defaults
> config
> 

If the info is cached then is there a need to evaluate bottom up?
Could do like a browser cache, i.e have a cache expiration parameter,
and allow users to interact with the cache to force expiration,
or adjust timeouts on a per item basis. Well except where the higher
level authority says no cache, or restricts the expiration time.

In some modalities we may not need to do bottom up evaluation, no?
Personal systems come to mind, in such systems an efficiency could
be gained by just doing the top down. (Top being the current value
inside a process). Also I like the idea of keeping a saved value
and a current value for each variable/resource. This allows 
users to try settings and then do a delayed save, or restore
from the in process values. Something from the Amiga. On startup
the current and saved values are equivalent. Applications can
then create new current values while working in a preference
dialog. These can then be used or saved or canceled as a group.
Apps could do this, but if it's in the library more of them might
be inclined to.

I was also thinking in it might be nice to allow server side push
to update values on the client systems. Of course only when configured.
These could come with a delayed transaction time, to allow coordinated
replication to happen concurrently even on disconnected system.

e.g. everyone changes the on-call pager number when shift change
occurs at  1:00 am, even on portables that are not connected or
not in range of a relay station.

Hmm, such temporal delayed transactions would have to be time warped
on transfer, I guess the transporter could handle that during
re-materialization.

-- 
We stand on the shoulders of those giants who coded before.
Build a good layer, stand strong, and prepare for the next wave.
Guide those who come after you, give them your shoulder, lend them your code.
Code well and live!   - [EMAIL PROTECTED] (7th Coding Battalion)

------------------------------

From: Sorce Simo <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.misc
Subject: Re: engineering practices in Linux/OSS
Date: Thu, 07 Jan 1999 13:03:44 +0100

big security nightmare wrote:

> How can you improve something like a word processor with changing the file
> format. According to your logic we should all still be using a.out format.
> Aren't most linux junkies caught up in a perpetual upgrade cycle, where they
> never actually get to use their computers to do anything, because a new
> patch or upgrade becomes available every few hours.
>
> What do you think??

Have you ever heard of extensible formats?
With this kind of structure the base format file is always the same and only if
use this phantomathic advanced features you wil perhaps not able to see only
the part the old software cannot interpret !!!
I think this is the correct way not to deceive the users!



------------------------------

From: Tristan Wibberley <[EMAIL PROTECTED]>
Crossposted-To: alt.os.linux,comp.os.linux.development.apps,comp.os.linux.setup
Subject: Re: Why I'm dumping Linux, going back to Windblows
Date: Sat, 09 Jan 1999 20:07:04 +0000
Reply-To: [EMAIL PROTECTED]

Joel Keating wrote:
> 
> I am going back to windows also.  Now  before everyone starts saying blah blah
> you don't understand and gets on their soap box let me give you some
> background.  I completely understand linux, have ran it for past 3 years,
> currently am Solaris admin.  Back in the old days, when i actually had time to
> program and hack around Linux was _the_ OS.  Now that most of my day is spend
> at work fixing Unix related problems I have no time/energy and sometimes even
> desire, to program, sniff.  I have Linux still on my computer but over the last
> month or so I have booted in less and less and less.  I am at the point now of
> just about ready to completely blow out linux partition and format fat32, but
> that might not happen.  Anyways, the one reason i like windows is that there is
> soo much software written for it.  Yes i know, i can write my own software to
> do just about anyting i want my computer to do, but (see above).  The simple
> fact is that if it wasn't for windows, windows would be an excellent OS.  I
> mean, the OS sucks, unstable and all that other shit that goes along with
> windows, including no berkeley sockets :).  But there is so much wonderful
> software written for windows that I have no choice but to keep using it.  And
> besides, my fingers are getting too arthritic to type, i'll just keep my tongue
> on my mouse and it will be fine in windows.

With your experience, you obviously understand that most windows
programs are written for win32, not windows (I'm assuming you're keeping
the argument dumbed down for the idiots ;). So will you come back when
wine runs more software, better?

-- 
Tristan Wibberley               Linux is a registered trademark
                                of Linus Torvalds.

------------------------------

From: "Marc Leblanc" <[EMAIL PROTECTED]>
Subject: XFree86 3.3.3 and Media GX
Date: Sat, 9 Jan 1999 15:08:01 -0500

I currently own a Presario 2200 from Compaq. The video card is integrated in
the processor (Cyrix MediaGX). Xfree86 3.3.3 is supposed to run on this CPU,
but I'm unable to configure... do someone have a xf86config file or tips for
this !?$* card...

Thanks !
Marc Leblanc
[EMAIL PROTECTED]



------------------------------

From: [EMAIL PROTECTED] (User470357)
Subject: Ram And comp.Fan
Date: 9 Jan 1999 20:21:14 GMT


   I would like to know if linux becomes much faster with more ram or does it
have a little effect. Say I had 16 mb and upgrade to 144 mb would I see a great
diffrence in speed in command line and in x windows.

Small remark I notice that my labtops fan does turn on under linux does anyone
know how to get around this (it gets to hot and I have to turn it off)

send questions and comments to [EMAIL PROTECTED]
thanks for any info on it 

------------------------------

From: [EMAIL PROTECTED] (Roy Stogner)
Crossposted-To: comp.os.linux.development.apps
Subject: File descriptor as array index?
Date: 9 Jan 1999 20:22:24 GMT
Reply-To: [EMAIL PROTECTED]

I'm writing a TCP server class library for Unix (specifically Linux,
but I'd like it to be portable), and I've run into a problem:

I need to be able to associate various bits of data (most importantly
a functor or function pointer) with each active file descriptor being
sent to select(); I can put this in a hash table if necessary, but it
would be nice to just maintain a vector of the data, and use the file
descriptor as an index into that vector.

For all the programs I've used and strace'd, this would work
perfectly, since the programs get assigned nice, low file descriptors
to use - however that doesn't seem to be guaranteed anywhere.  This
server will have ~50 simultaneous clients, and if all of those sockets
had file descriptors less than 500, I would be happy.  If one of those
sockets was assigned an fd of 50000, I would need to allocate a lot of
wasted memory, and would be very unhappy.

Does anyone know how file descriptors get assigned under Linux and
other Unices?  Would it be safe to use them in this fashion?

Replies cc:'ed to roystgnr @ rice.edu would be appreciated.
---
Roy Stogner

------------------------------

From: [EMAIL PROTECTED] (David Matthews)
Subject: Re: How to get CPU usage?
Date: 9 Jan 1999 20:28:37 GMT
Reply-To: [EMAIL PROTECTED]

On Sat, 09 Jan 1999 15:34:49 +0900, JiSook Kim <[EMAIL PROTECTED]> wrote:
>How to get CPU usage?

top

-- 
David Matthews, Boston University

------------------------------

From: [EMAIL PROTECTED] (Perry Pip)
Crossposted-To: comp.os.linux.advocacy,comp.os.linux.development.apps,comp.os.linux.x
Subject: Re: disheartened gnome developer
Reply-To: [EMAIL PROTECTED]
Date: Sat, 09 Jan 1999 20:32:00 GMT

On Sat, 09 Jan 1999 18:11:07 GMT, steve mcadams <[EMAIL PROTECTED]> wrote:
>[Snipped for brevity, quoted material marked with ">"]
>On Fri, 08 Jan 1999 23:53:49 -0600, "Robert J. Hansen"
><[EMAIL PROTECTED]> wrote:
>
>>Free software can be just that -- free.  He's right in that you can't
>>make money off free (free beer) software.  So don't deal in free
>>software.  Red Hat doesn't deal in free software: they deal in
>>SUPPORTING free software and DEVELOPING new free software.  People will
>>pay money for support, and they'll pay money to have access to better
>>software.
>
>WHERE does this leave companies that want to put all their resources
>into development????

Bankrupt, perhaps?? Bankruptcies are a good thing. Without business
failures, capitalism wouldn't thrive. Survival of the fittest, not the
fattest.


>Are they expected to start what amounts to a second company by hiring
>people to do support for a fee?  This means they have to make an
>exorbitant profit from their newly hired and probably unskilled
>support people in order to support their development efforts, so their
>customers (if they are newbies and don't know they can get better
>support here in the newsgroups on a costless basis) get ripped off
>because they don't know better than to ask these bozos just hired off
>the street how to get their commercial web-server configured
>correctly?

I'm sure companies like Redhat and Cygnus aren't hiring newbies off the
street. There are lot's of Linux gurus out there that would take a job
with either company. Furthermore, I'm sure it's necessary for support
personel to be in close contact with developers, if for no other reason
than to pass customer feedback back to the developers.


>What if such a company believes that its support should be costless
>because it is a point of HONOR and/or INTEGRITY to keep your software
>working correctly?  Do they just get screwed?  They all have to go and
>flip burgers for a living because they don't do phones for money like
>the other 900-girls?

Even if the software is so good so even child could set it up 
without trouble, there will still those who want the features to be 
extended and are willing to pay for the development.

>And worse yet, what if these guys writing the CODE are SO GOOD that
>NOBODY ever NEEDS SUPPORT?  Are they supposed to sit there and either
>starve because they've done such a good job, or stop writing code and
>get a job where they can support themselves?

See above.

>>That's Red Hat's business: support.  I've got money, which they want, and
>>they've got the technical know-how, which I want.  So we exchange goods
>>and everybody's happy.
>
>You are NOT exchanging goods.  You are exchanging MONEY FOR SERVICES.
>If you were buying a proprietary product, You would be exchanging
>MONEY FOR GOODS, or put in your terms, exchanging goods.
>
>Object (money) traded for verb (services) is apples and oranges.
>Object (money) traded for object (proprietaryCode) is apples and
>apples.

You are correct on your point of semantics, but that doesn't address what
he means to be saying.

>>So why do they distribute Red Hat for free?  -- As a promotional offer. 
>
>What services are they promoting, the services that we frequently see
>bitched about in the NG's, all the   "Red Hat Fails to deliver" and
>similar threads?

You derive usefull statistics from what you read on NG's?? Of course the
few unhappy people are going to gripe somewhere. The NG's are a good place
for them to try to hurt Redhat's repution. I understand IBM wants to get
in bed with Redhat, providing a 24-7 support system.

>You are mistaken.  Most of the copies of NT5 BETA (aka Windows 2000)
>that have been sent into the world to date have gone to MSDN
>subscribers.   I received two or three copies of NT5 beta in 1998.
>They were so shitty that I never did get any of them installed on my
>test system, and I am damn sure not ever going to try it on my
>development system.  Nobody who has ever installed and used a copy of
>NT5 BETA is ever going to going to buy it on that basis.  

There final releases are shitty too. So what??

>NT5 BETA is too lame to be a promotional offer.  Microsoft may be many
>things but  they're not quite stupid enough to be offering promotional
>cookies that taste like buffalo chips.  With a product that bad you
>have to get your money upfront or you will never see it unless you
>sell exorbitant service contracts like MSDN; I'm an MSDN Universal
>subscription holder, you can be one too if you pay your $2500 a year
>to Microsoft for what amounts to the documentation you should have
>received gratis with your copy of their proprietary software. 

>Microsoft changed over to the service model years ago.   -steve

BULLSHIT!!!!. MS still get's the vast majority of their revenues from
royalties on their OS's and business apps. Furthermore, charging a
subscription fee for essential documention is not a support service, it's
an additional royalty. 

And you don't get shit for documention. With both Gnome and KDE you have
all the sources, gratis. Sure it's harder to read than a Library
reference, but it's the only thing that tells exactly how the library
calls will behave.

Perry


------------------------------

From: Navindra Umanee <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.advocacy,comp.os.linux.development.apps,comp.os.linux.x
Subject: Re: disheartened gnome developer
Date: 9 Jan 1999 20:35:49 GMT

Perry Pip <[EMAIL PROTECTED]> wrote:
> In this respect, i personally feel Gtk/Gnome offers a better contract for
> developers. 

But how many of the GTK apps released on freshmeat are proprietary
apps?  I'd dare say they were all GPL'ed.

> And I can't help but notice that on freshmeat I see so many

[asimov] [/home/navindra] host -t any freshmeat.net
freshmeat.net           NS      NS.REDHAT.COM
freshmeat.net           NS      SPEEDY.REDHAT.COM

> more Gtk/Gnome based apps than I do Qt/KDE based apps. Could it be for

Personally I don't see that many GNOME apps on Freshmeat (only GTK).
It also wouldn't surprise me that plenty of KDE apps go unannounced
(check kde-announce, www.kde.org/news_dyn.html or linuxtoday.com).

It seems there are more KDE apps than GNOME apps on freshmeat
afterall.  I guess that's not counting Qt and GTK apps.

http://ct.us.mirrors.freshmeat.net/appindex/kde/
http://ct.us.mirrors.freshmeat.net/appindex/gnome/

-N.
-- 
"These download files are in Microsoft Word 6.0 format.  After unzipping, 
these files can be viewed in any text editor, including all versions of 
Microsoft Word, WordPad, and Microsoft Word Viewer."  [Microsoft quote]
           < http://www.cs.mcgill.ca/~navindra/editors/ >

------------------------------

From: Hugh Lawson <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.advocacy,comp.os.linux.development.apps,comp.os.linux.x
Subject: Re: disheartened gnome developer
Date: Sat, 09 Jan 1999 09:27:10 -0500

Luke Scharf wrote:

> 
> One could argue the the Open Source community is one of the very few
> successful communist entities, BUT people who want features generally
> pay for them with their time and effort.  Capitalism does not
> necessarily need money; merely an exchange of valuable things (time &
> effort) for other valuable things (a working, function-rich piece of
> software).
> 

Most of the things that people do for fun are fairly communistic,
though the profit-making thing intrudes in the provision of
services.  Consider scholarship, much of science--in a lot of this
the main motive, aside from the pleasure of doing it, is hope of
gaining glory.

Add amateur sports, music, raising children, all kinds of hobbies.

In newsgroups you see gurus working hard answering tough questions
because they enjoy using their knowledge and receiving the thanks of
those they help.


-- 
Hugh Lawson
Greensboro, North Carolina
[EMAIL PROTECTED]

------------------------------

From: Nix <$}xin{[email protected]>
Subject: Re: Redefining time_t
Date: 08 Jan 1999 04:06:48 +0000

[EMAIL PROTECTED] (Bjorn Reese) writes:

>                                                      (at least some
> individual members have been bitching about it.)

Clive Feather's got a paper punching holes in it somewhere.

-- 
`Anyone who says you can have a lot of widely dispersed people hack
 away on a complicated piece of code and avoid total anarchy has never
 managed a software project.' - Andy Tanenbaum in 1992 on comp.os.minix

------------------------------


** FOR YOUR REFERENCE **

The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:

    Internet: [EMAIL PROTECTED]

You can send mail to the entire list (and comp.os.linux.development.system) via:

    Internet: [EMAIL PROTECTED]

Linux may be obtained via one of these FTP sites:
    ftp.funet.fi                                pub/Linux
    tsx-11.mit.edu                              pub/linux
    sunsite.unc.edu                             pub/Linux

End of Linux-Development-System Digest
******************************

Reply via email to